这篇文章给大家介绍Python怎样爬取新浪微博数据,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
现在就教大家如何批量爬取微博的数据,大大加快数据迁移速度!
我们使用到的是第三方作者开发的爬虫库weiboSpider(有工具当然要用工具啦)。这里默认大家已经装好了Python。
1. 下载项目
进入下方的网址,点击Download ZIP下载项目文件
https://github.com/dataabc/weiboSpider
或者
你有git的话可以在cmd/terminal中输入以下命令安装
git clone https://github.com/dataabc/weiboSpider.git
2.安装依赖
将该项目压缩包解压后,打开你的cmd/Termianl进入该项目目录,输入以下命令:
pip install -r requirements.txt
便会开始安装项目依赖,等待其安装完成即可。
3.设置cookie
打开weibospider文件夹下的weibospider.py文件,将"your cookie"替换成爬虫微博的cookie,具体替换位置大约在weibospider.py文件的22行左右。cookie获取方法:
3.1 登录微博
3.2 按F12键或者右键页面空白处—检查,打开开发者工具
3.3 选择network — 按F5刷新一下 — 选择第一个文件 — 在右边窗口找到cookie
然后替换大约在weibospider.py文件的22行左右的cookie,如图所示:
替换前:
替换后:
4.设置要爬的用户user_id
4.1 获取user_id
点开你希望爬取的用户主页,然后查看此时的url:
你会发现有一串数字在链接中,这个就是我们要用到的userID, 复制即可。
4.2 设置要爬取的user_id
打开weibospider文件夹下的weibospider.py文件,将我们想要爬取的一个或多个微博的user_id赋值给user_id_list。
user_id设置代码位于weibospider.py的main函数里,具体代码如下:
# 爬单个微博用户,可以改成任意合法的用户id
user_id_list = ['1669879400']
或者
# 爬多个微博用户,可以改成任意合法的用户id
user_id_list = ['1223178222', '1669879400', '1729370543']
或者
"""可以在文件中读取user_id_list,文件中可以包含很多user_id,
每个user_id占一行,文件名任意,类型为txt,位置位于本程序的同目录下,
比如文件可以叫user_id_list.txt"""
user_id_list = wb.get_user_list('user_id_list.txt')
这样我们的基本设置就完成了,当然大家如果有需要还可以设置Mysql数据库和MongoDB数据库写入,如果不设置的话就默认写入到txt和csv文件中。
5. 运行爬虫
打开cmd/terminal 进入该项目目录,输入:
python weibospider.py
即可开始爬取数据了,怎么样,是不是超级方便?而且你还可以自定义爬取的信息,比如微博的起始时间、是否写入数据库,甚至能在它代码的基础上增加新的功能!(比如加个cookie池或者代理池之类的)
关于Python怎样爬取新浪微博数据就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。