抓取某话题下指定时间内的微博数据,包括博文数据、评论信息等(可通过高级搜索筛选时间) 您所在的位置:网站首页 微博live能保存吗 抓取某话题下指定时间内的微博数据,包括博文数据、评论信息等(可通过高级搜索筛选时间)

抓取某话题下指定时间内的微博数据,包括博文数据、评论信息等(可通过高级搜索筛选时间)

2023-12-10 05:23| 来源: 网络整理| 查看: 265

 代码有点长,完整代码放在文章最后了。

最后的数据存储为了3个表,表的各字段如下:

# csv头部 writer.writerow(('话题链接', '话题内容', '楼主ID', '楼主昵称', '楼主性别', '发布日期', '发布时间', '转发量', '评论量', '点赞量', '评论者ID', '评论者昵称', '评论者性别', '评论日期', '评论时间', '评论内容')) #微博博文与评论的全部信息 writer_1.writerow(('话题链接', '楼主ID', '话题内容','楼主昵称', '楼主性别','是否认证','认证类型', '是否认证金v','发博数量','关注人数','粉丝数','微博等级', '发布日期', '发布时间', '转发量', '评论量', '点赞量')) #微博博文的信息(不包含评论) writer_2.writerow(('楼主ID','评论者ID','话题内容','评论内容','评论者昵称', '评论者性别','是否认证','认证类型', '是否认证金v','发博数量','关注人数','粉丝数','微博等级', '发布日期','评论日期', '评论时间', '回复量', '点赞量')) #评论的信息

1.爬取前的准备工作:

建议使用谷歌浏览器,通过cookie和headers来登录微博,注意cookie是手机登录模式下的cookie,否则评论会获取不全

headers = { 'cookie': cookie, 'user-agent': ua, 'Referer':'https://s.weibo.com/weibo?q=%E5%9B%BD%E8%B6%B3%E6%AD%A6%E7%A3%8A&typeall=1&suball=1×cope=custom:2021-11-05:2021-12-06-0&Refer=g', 'x-requested-with': 'XMLHttpRequest' }

2.通过微博网页版的高级搜索,复制对应的URL

3.通过requests.get(url=url, headers=headers) 来解析网页,并通过正则表达式获取到所有微博的唯一标识符mid,后续都根据mid来获取微博信息

rep1 = requests.get(url=api_url, headers=headers) # rep1.enconding= rep1.apparent_encoding try: rep=rep1.text comment_ID=re.findall('(?


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有