前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >抓取微博 10w 余转发信息,构建 N 层转发关系网络图谱

抓取微博 10w 余转发信息,构建 N 层转发关系网络图谱

作者头像
月小水长
发布2021-12-28 09:15:55
2.2K0
发布2021-12-28 09:15:55
举报
文章被收录于专栏:月小水长

这是 月小水长 的第 104 篇原创干货

在不久前发布的微博转发爬虫一文中:

2021 微博最新转发爬虫发布

分享了抓取微博的转发具体信息的爬虫 pyd 文件。但是单条微博最多只能抓到 1w 左右的转发,近日得空升级更新了下,以敲钟人李文亮英雄的最后一条微博为例子,实际抓到 10w+条抓发时仍可继续抓取,理论上可以全部抓取。更新的文件依然在上文链接中获取。

新的文件除了抓发数量上限有所升级外,还对微博 id 的格式做了自动转化处理,比如本例中的微博链接可以是:

代码语言:javascript
复制
https://weibo.com/1139098205/Is9M7taaY

数字 1139098205 是用户 id,最后斜杠后面的 Is9M7taaY 才是微博 id。

链接也可以是:

代码语言:javascript
复制
https://m.weibo.cn/detail/4467107636950632

上面的 4467107636950632 也是微博 id。它们可以通过转发爬虫的链接同目录下的文件 parseMid 互相转发,不过还是不方面,这次的爬虫文件,外面无论是指定 id 为 4467107636950632 还是 Is9M7taaY ,内部都会自动转化。

该文件不需要 json 配置,只需新建 py 按以下代码格式使用即可(下述代码左右滑动观看)。

代码语言:javascript
复制
from NewSuperWeiboForwardSpider import NewSuperWeiboForward
if __name__ == '__main__':
    # cookie 要换的,参考B站视频 BV1F44y1i7dq
    forwardSpider = NewSuperWeiboForward(mid='Is9M7taaY',
    start_page=1,
    limit=1000000,
    cookie='eat cookie')
    forwardSpider.crawl()

上述的 mid 也可以传入 4467107636950632 ,抓取的是同一条微博的转发。

保存的结果文件在代码根目录的 forward 文件下的 {mid}.csv 文件中。如下:

结果文件

最后使用 pyecharts 构建了该条微博的 N 层转发关系网络。如下

1 层转发网络

2 层转发网络

3 层转发网络

4 层转发网络

发现等 N>=3 时的网络已经近似等于 3 层网络了,说明转发网络几乎只能触达影响 3 层,不过指数爆炸了 3 次,影响力不可小觑。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-12-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 月小水长 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 这是 月小水长 的第 104 篇原创干货
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档