资源简介
根据关键字,起始时间,和天数自动抓取时间段内的微博,包括微博id ,用户id ,时间,vip,微博内容,转发信息,转发信息转发数和评论数,并写入excel表格。
代码片段和文件信息
from urllib import request
from urllib import parse
from urllib.request import urlopen
from http import cookiejar
from lxml import etree
from bs4 import BeautifulSoup
import re
import datetime
#from myfunction import ntoc
#from myfunction import dict_freq_sort
import xlwt
wbk = xlwt.Workbook()
sheet = wbk.add_sheet(‘sheet 1‘)
keyword=‘食品安全‘
y=2019
m=3
d=1
days=10
def getday(ymdn):
the_date = datetime.datetime(ymd)
result_date = the_date + datetime.timedelta(days=n)
d = result_date.strftime(‘%Y-%m-%d‘)
return d
url_keyword=parse.quote(keyword)
#提交准备
user_agent = ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/18.17763‘
headers = { ‘User-Agent‘ : user_agent ‘Referer‘:‘‘ }
#cookie构建opener
cookie=cookiejar.CookieJar()#cookie = cookiejar.MozillaCookieJar(filename) 可保存读取的cookie初始化方法
#cookie.load(filename ignore_discard=True ignore_expires=True)读取已保存cookie
handler = request.HTTPCookieProcessor(cookie)
opener = request.build_opener(handler)
#pattern_newline= re.compile(r‘,|?|。|!|……|:|;‘)#每一句进行换行
#pattern_del_blank=re.compile(r‘ ||的秒拍视频|“|”|、|网页链接|《|》|收起全文d|@|【|】|“|“‘)#删空格去和微博符号
#pattern_del=re.compile(r‘#.*#‘)#删掉微博中的主题名
pattern_chinese =re.compile(u“[\u4e00-\u9fa5]+“)
end_str=‘抱歉,未找到“‘+keyword+‘”相关结果。‘
pattern_endweibo=re.compile(end_str)
pattern1=re.compile(‘展开全文c‘)
pattern_del_sentence=re.compile(‘的微博视频‘)
pattern_save=re.compile(r‘【.*?】|《.*?》‘)
patterb_firstsen=re.compile(r‘[\u4e00-\u9fa5](.*?)。|[\u4e00-\u9fa5](.*?)?|[\u4e00-\u9fa5](.*?)!‘)
pattern_time=re.compile(r‘..:..‘)
sum=0
for i in range(days):
data=getday(ymd-i)
print(data)
for j in range(24):
if j==23:
data_add_hour = data + ‘-‘ + str(j) + ‘:‘ +getday(ymd-(i-1)) + ‘-‘ + str(0)
else:
data_add_hour = data + ‘-‘ + str(j) + ‘:‘ + data + ‘-‘ + str(j + 1)
print(data_add_hour+‘:‘)
for k in range(50):
url = ‘https://s.weibo.com/weibo?q=‘+url_keyword+‘&typeall=1&suball=1×cope=custom:‘+data_add_hour+‘&Refer=g&page=‘+str(k+1)
requ = request.Request(url=urlheaders=headers) # data#headers
try:
respones = opener.open(requtimeout=60) # timeout=10 使用自己建的opener处理requests
# cookie.save(ignore_discard=True ignore_expires=True) 保存cookie
web_data = respones.read().decode(“utf-8“ “ignore“)
if pattern_endweibo.findall(web_data)!=[]:
#print(‘该时段没有更多结果‘)
break
page = etree.HTML(web_data)
weibo_list = page.xpath(“//div[@mid]“)
for p in weibo_list:
rowNum = sum
#print(‘=============‘)
mid =
- 上一篇:PCA结合马氏距离 py代码
- 下一篇:month2day.py
相关资源
- python爬取豆瓣每个账户对电影的评分
- 使用python对淘宝商品信息数据进行爬
- Python_百科爬虫
- python爬虫Scrapy(一)-我爬了boss数据
- 豆瓣电影信息Python爬虫存入MongoDB.一分
- Python爬虫文件:爬取图片的程序.py
- python爬取新浪微博源代码
- Python搜索爬虫抓取超高清视频
- 微博图片视频小爬虫
- 基于Python爬虫的股票信息爬取保存到
- Python简单网页爬虫
- Python爬虫每日抓取必应壁纸
- Python 3网络爬虫开发实战
- isbn查询书籍详细信息2.0
- 大批量图片爬虫工具可以自动上万张
- 利用爬虫获取IP的地理位置
- Python爬虫源码—爬取猫途鹰官方旅游
- 爬取瓜子二手车.py
- 用python实现一个百度百科的爬虫工具
- 问卷星爬虫带验证码
- python爬取亚马逊排名
- 知乎爬虫
- python端口扫描器图形化界面.zip
- Web Scraping with Python 爬虫2015 高清.pdf版
- python爬取百度搜索新闻,并自动生成
- python网络爬虫视频教学国家精品课程
- Python爬取知乎回答中的文本及图片
- python 爬虫从入门到实战
- python爬虫数据可视化分析大作业.zip
- 中关村手机爬虫
评论
共有 条评论