在不久前发布的微博转发爬虫一文中: 2021 微博最新转发爬虫发布 分享了抓取微博的转发具体信息的爬虫 pyd 文件。但是单条微博最多只能抓到 1w 左右的转发,近日得空升级更新了下,以敲钟人李文亮英雄的最后一条微博为例子,实际抓到 10w+条抓发时仍可继续抓取,理论上可以全部抓取。更新的文件依然在上文链接中获取。 新的文件除了抓发数量上限有所升级外,还对微博 id 的格式做了自动转化处理,比如本例中的微博链接可以是:
https://weibo.com/1139098205/Is9M7taaY
数字 1139098205 是用户 id,最后斜杠后面的 Is9M7taaY 才是微博 id。 链接也可以是:
https://m.weibo.cn/detail/4467107636950632
上面的 4467107636950632 也是微博 id。它们可以通过转发爬虫的链接同目录下的文件 parseMid 互相转发,不过还是不方面,这次的爬虫文件,外面无论是指定 id 为 4467107636950632 还是 Is9M7taaY ,内部都会自动转化。 该文件不需要 json 配置,只需新建 py 按以下代码格式使用即可(下述代码左右滑动观看)。
from NewSuperWeiboForwardSpider import NewSuperWeiboForward
if __name__ == '__main__':
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 次,影响力不可小觑。 需要指定微博的指定层数的转发网络的读者,下文留言即可,转评赞此文者优先。
转发构建的教程呢?等阅读过万,下次一定!
|