0
点赞
收藏
分享

微信扫一扫

Python 免登录微博数据爬虫(仅研究使用)

穿裙子的程序员 2022-02-24 阅读 89

微博数据是非常有价值的数据,这些数据可以用作我们进行一些系统开发时的数据源, 比如前段时间发过的:​​Python 短文本识别个体是否有自杀倾向​​,在此文中,我们使用微博绝望树洞的数据,利用SVM做了一个简单的自杀倾向识别模型。

当然,微博数据的应用还不仅如此,如果你大胆详细,大胆猜测,将会有许多可以利用这些数据进行研究的机会。不过, 技术是把双刃剑,有好有坏,我不希望各位拿着这个爬虫去做一些违反道德、法律的事情,应用于好的事务,才是技术诞生的初衷。

本文讲的是以用户为单位的爬虫,如果你希望能够定制自己需要的爬虫,请看这篇教程:​​Python 爬取微博树洞详细教程​​

1.准备

其实免登录的原理很简单,就是通过手机版的微博绕过其登录验证,大家可以用手机网页打开这个网址,你会发现其实大部分微博在你不登录的情况下都是可见的:

​​

​​

​​

可见即可爬。因此,我们只需要调用这个微博数据的json接口即可获取到数据。不过我们不要一上来就直接撸代码,要善于利用Python开源社区的特点,上网上找相关的现成的成熟轮子,而不是自己动手做一个半成熟版,这样能节省许多时间。

经过一番搜索,我找到了这个免Cookie版的微博爬虫,dataabc开发的:

​​

​​

​​

其代码思路与我想的差不多,只需要调用json的数据接口即可获取数据:

Python 免登录微博数据爬虫(仅研究使用)_json

下载该开源项目,可以上该网页直接Download, 也可以使用git:

git clone https://github.com/dataabc/weibo-crawler.git

如果你两个都不会,没关系,Python实用宝典 后台回复​ 微博采集工具​ ​即可下载。

2.配置采集参数

你要确保Python和pip已经成功安装在电脑上噢,如果没有,请访问这篇文章:​​超详细Python安装指南​​ 进行安装。


安装完Python后,Windows环境下打开Cmd(开始—运行—CMD),苹果系统环境下请打开Terminal(command+空格输入Terminal). 输入以下命令安装我们所需要的模块:

pip install -r requirements.txt

看到许多个 Successfully installed xxx 则说明安装成功。

2.1 找到你需要爬的用户ID

点开你希望爬取的用户主页,然后查看此时的url,你会发现有一串数字在链接中,这个就是我们要用到的userID, 复制即可。

Python 免登录微博数据爬虫(仅研究使用)_json_02

如果不是一串数字,可以点开任一条微博评论的页面,这时候上面的链接一定会有串数字,如果还是没有,就上手机版的微博页面找,这种时候就需要耐心和多尝试了。

2.2 修改config.json

获得用户的userID后,需要将ID写入到config.json的user_id_list数组中,如图所示:

Python 免登录微博数据爬虫(仅研究使用)_python_03


其他参数如:

filter​:控制爬取范围,值为1代表爬取全部原创微博,值为0代表爬取全部微博(原创+转发)

since_date​: 爬取该日期之后的时间

write_mode​: 写入的文件格式

在这往下的参数分别是:​是否下载原创微博图片​、​是否下载转发微博图片​、​是否下载原创视频​、​是否下载转发的视频​,如果为1则是,为0则为否。再往后如果你需要写入数据库,还可以配置MySQL或MongoDB的连接参数。

3.开始采集

配置好了以后,采集就很简单了,你只需要用CMD或Terminal进入该文件夹,输入:

python weibo.py

即可进行数据采集。采集结束后,如果你设定的是保存为csv文件,则会在当前文件夹下的weibo文件夹里产生一个名为该微博用户名的数字.csv文件,如:

weibo\阿森纳足球俱乐部\2075686772.csv

这个文件里就是你想要的数据。

该开源模块设计的功能其实非常完善,你看看下面这个列表就知道了。

Python 免登录微博数据爬虫(仅研究使用)_python_04

真的太贴心辣,必须得感谢这位开源作者,如果你喜欢的话,记得上去他的仓库给他点个star哦!

如果你喜欢今天的Python 教程,请持续关注Python实用宝典,如果对你有帮助,麻烦在下面点一个赞Python 免登录微博数据爬虫(仅研究使用)_python_05,有任何问题都可以在下方留言,我们会耐心解答的!


Python实用宝典 (pythondict.com)

不只是一个宝典

举报

相关推荐

0 条评论