当前位置: 移动技术网 > IT编程>脚本编程>Python > 新浪微博python爬虫分享(一天可抓取 1300 万条数据),超级无敌

新浪微博python爬虫分享(一天可抓取 1300 万条数据),超级无敌

2020年05月04日  | 移动技术网IT编程  | 我要评论

最新的电视剧有哪些,上海新闻网,开心的马骝谐音歌词

直接进入主题


爬虫功能:
此项目和qq空间爬虫类似,主要爬取新浪微博用户的个人信息、微博信息、粉丝和关注(详细见此)。还要注意:不管你是为了python就业还是兴趣爱好,记住:项目开发经验永远是核心,如果你没有2020最新python入门到高级实战视频教程,可以去小编的python交流.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,里面很多新python教程项目,还可以跟老司机交流讨教!
代码获取新浪微博cookie进行登录,可通过多账号登录来防止新浪的反扒(用来登录的账号可从淘宝购买,一块钱七个)。
项目爬的是新浪微博wap站,结构简单,速度应该会比较快,而且反扒没那么强,缺点是信息量会稍微缺少一些(可见爬虫福利:如何爬wap站)。
爬虫抓取微博的速度可以达到 1300万/天 以上,具体要视网络情况,我使用的是校园网(广工大学城校区),普通的家庭网络可能才一半的速度,甚至都不到。

环境、架构:
开发语言:python2.7
开发环境:64位windows8系统,4g内存,i7-3612qm处理器。
数据库:mongodb 3.2.0
(python编辑器:pycharm 5.0.4;mongodb管理工具:mongobooster 1.1.1)

主要使用 scrapy 爬虫框架。
下载中间件会从cookie池和user-agent池中随机抽取一个加入到spider中。
start_requests 中根据用户id启动四个request,同时对个人信息、微博、关注和粉丝进行爬取。
将新爬下来的关注和粉丝id加入到待爬队列(先去重)。

使用说明:
启动前配置:

mongodb安装好 能启动即可,不需要配置。
python需要安装好scrapy(64位的python尽量使用64位的依赖模块)
另外用到的python模块还有:pymongo、json、base64、requests。
将你用来登录的微博账号和密码加入到 cookies.py 文件中,里面已经有两个账号作为格式参考了。
另外一些scrapy的设置(如间隔时间、日志级别、request线程数等)可自行在setting里面调。

运行截图:

 

 

数据库说明:
sinaspider主要爬取新浪微博的个人信息、微博数据、关注和粉丝。
数据库设置 information、tweets、follows、fans四张表,此处仅介绍前面两张表的字段。

information 表:
_id:采用 “用户id” 作为唯一标识。
birthday:出生日期。
city:所在城市。
gender:性别。
marriage:婚姻状况。
nickname:微博昵称。
num_fans:粉丝数量。
num_follows:关注数量。
num_tweets:已发微博数量。
province:所在省份。
signature:个性签名。
url:微博的个人首页。

tweets 表:
_id:采用 “用户id-微博id” 的形式作为一条微博的唯一标识。
co_oridinates:发微博时的定位坐标(经纬度),调用地图api可直接查看具体方位,可识别到在哪一栋楼。
comment:微博被评论的数量。
content:微博的内容。
id:用户id。
like:微博被点赞的数量。
pubtime:微博发表时间。
tools:发微博的工具(手机类型或者平台)
transfer:微博被转发的数量。
————————————————

最后要注意:不管你是为了python就业还是兴趣爱好,记住:项目开发经验永远是核心,如果你没有2020最新python入门到高级实战视频教程,可以去小编的python交流.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,里面很多新python教程项目,还可以跟老司机交流讨教!
本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网