前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >复杂网络建模 | 构建 M 层 N 节点的微博深度转发网络

复杂网络建模 | 构建 M 层 N 节点的微博深度转发网络

作者头像
月小水长
发布2023-07-03 14:38:50
3430
发布2023-07-03 14:38:50
举报
文章被收录于专栏:月小水长月小水长

今日推送文章的主题即:

由一条微博出发,该微博作为网络的中心节点或者所有节点的祖先节点,视为第一层。

然后抓取他的转发微博,将这些转发微博视为第二层的节点。

第三层、第四层、第 M 层类似,可以无限递归下去。

这其实是一个广度优先遍历问题,即 BFS。

不过由于某些微博的转发可能多达十万甚至百万,有必要对网络规模作出限制,这里采取的做法是限制每一层节点最多为 N 个

以前推送过如何抓取过一条微博的转发:

2021 微博最新转发爬虫发布

认真分析了上述推送的指南的话,抓很多条微博的转发也不是问题。

那如何将这些转发连结成深度网络呢?

最核心的一点,通过微博 id 作为桥梁;

对于转发的结果文件而言,文件名代表某条微博,文件中的 mid 列即是该微博的转发的 id,那么就可以设置从文件名到 mid 列的 df.shape[0] 条连边;

如此往复,深度网络就出来了

也可以通过 weibo_link 构建,核心是保证起点终点唯一且可溯源

去年分享过一篇推送:

零配置构建微博多层转发网络可视化的网站来了

在这个网站,只需输入根微博 id,可以一键生成上面所说的深度网络,后台会自动执行爬虫+可视化的整个过程;只怪当时太匆匆,M、N 都只是默认值,无法自定义,上周末有空重构了下,可以设置多级转发网络的深度 M 和每层节点规模 N。

设置好参数后点击提交构建按钮即可开始构建多级深度转发网络。

只需一盏茶的功夫,你就可以在页面左下方按钮下载结果文件

如果网络规模较大,也可能是一顿火锅的时间。

以五月天最热的一条微博为例,构建下面这样的四层深度网络,整个过程大致花了 20 分钟。

工具地址为:

https://weibo-crawl-visual.buyixiao.xyz/weibo-repost-path-network-generator

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档