首页 > 生活

Scrapy 新浪微博搜索爬虫

更新时间:2025-05-19 17:51:32 阅读: 评论:0

微博高级搜索

可能你经常有这样的需要,比如最近有热度的事件兴起,你要抓取几月几号到几月几号这段时间,提及到某个关键词的微博。

这其实是一个非常刚性的需求,这就要采用微博的高级搜索来完成了。

本文采用 微博站点 weibo

高级搜索接口:搜索结果

weibo/蓝翔挖掘机search/mblog?advanced=mblog&f=s

注意这里的时间是以天为单位,如果输入关键词“高考”,试着分别输入20190601至20190602、20190601至20190620,结果返回的都是100页,每页10个,也留学基金委就是1000条结果。如果想爬取更丰富的数据,肯定是要构造每一个相差一天,一直到截止日期的url集合

import Scrapyfrom scrapy import Re祖国的成就q信息提取uestfrom ..items import *import datetimeimport reclass WeiboSpiderSpider(scrapy.Spider): name = 'weibo_spider' allowed_domai成都javans vps虚拟服务器= ['weibo'] # start_urorigins悦木之源ls = ['weibo/'] base_url = "weibo" def start_requests(self): url_format 中银通支付= "weibo/search/m小学生恋爱blog?hideSearchFrame=&keyword={}&advancedfilter=1&starttime={}&endtime={}&sort=time" # 搜索的关键词,可以修改 # keyword = "阴国际问题研究阳师" keyword = "高考" 订舱费 # 搜索的起始日楼兰女期,自行修改 微博的创建日期是2009-08-16 也就是说不要采用这个日期更前面的日期了 date_start = dateti护墙板me.datetime.strptime("2019-05-20", '%dns解析失败Y-%m-%d') # 搜索的结束日期,自行修改 date_end = datetime.datetime.s员工转正审批表trptime("2019-06副乳怎么消除-20", '%Y-%m-%d') time_约会规则spread = datetime.timedelta(days=1) while date_start < date_end: next_time = date_start + time_s舌尖体pread url = url_format.format(keyword, date_start.strftime("%Y%m%d"), next_time.strftime("%Y%m%d")) date_start = next_time yield Request(url, callback=self.parse_tweet, dont_filter=True)

例如这样我们爬取 2019-05-20 至 2019-06-20 这一个母亲节送什么花月关键词“高考”的微博,构造url,从起始日期每天+1天,一天是10*100=1000条结果,一共是这一个月之间的天数*1000条结果。

然后就可以爬取微博数据和发该微博的用户信息。

解析提取数据部分请参考:晚来天御雪:Scrapy 爬取新浪微博(正则和xpath解析)

GIthub:Ingram7/WeiboSearch

小白的学习笔记...

emmmm...

后来,抓取了九华山旅游攻略近3个月,关键词为“阴阳师”的微博近80000条,用户50000多个,男女比例1.8:1

根据微博内容生成词云 (词云的Github源码:Ingram7/Mywordcloud)

本文发布于:2023-05-27 23:37:24,感谢您对本站的认可!

本文链接:http://www.ranqi119.com/ge/85/139827.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:爬虫   新浪   Scrapy
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 站长QQ:55-9-10-26|友情:优美诗词|电脑我帮您|扬州装修|369文学|学编程|软件玩家|水木编程|编程频道