史诗级爬虫神器scrapy框架实战(爬取微博小我信息并存入MySQL)_数据流_数据库
爬来爬去的才好玩呀!
须要什么直接上去便是爬,美滋滋(切勿用于商用)
Faceless man in a hooded robe sits at a table with
准备环境1、准备好Python环境
2、支配好scrapy框架
导入干系包,没有报错则安装成功。
全部***安装成功后,在cmd命令中输入scrapy 如果没有报错 则支配成功。
3、mysql的支配
heidiSQL数据库可视化
1、Scrapy architecture
2、数据流
Scrapy中的数据流由实行引擎掌握,其过程如下:
以上组件和数据流的部分是参考别的的先容,以为描述的挺好,比较随意马虎理解全体框架的构造。下面是干货:
scrapy工程工具在你须要创建工程的目录底下启动cmd命令(按住shift键右键选择在此处打开命令窗口) 实行:scrapy startproject weibo
会在当前目录下天生scrapy框架的目录构造:
本人用的IDE是pycharm ,用IDE打开工程,工程终极的目录构造如图所示:
item.py的内容:
定义了两个类,InformationItem获取关注列表用户的个人信息,TweetsItem获取微博内容
weibo_spider.py的内容:
每个微博用户都有唯一的标识uid,此uid是获取须要工具的关键。修正start_url里面的ID(0123456789),比如换成留几手的ID(1761179351),即把地址换成你想获取的用户的关注人列表的信息,可以对多个用户的关注列表用redis_keyf办法进行分布式操作。内容比较多就不一一先容,代码不理解的可以留言磋商。
获取cookies仿照上岸微博:
在myAcount中输入你自己拥有的微博账号密码,就可以仿照上岸微博啦:
这里有两种办法:
【1】仿照浏览器提交表单上岸(推举)
【2】通过selenium WebDriver 办法上岸
验证码暂时还是先手动输一下吧,还没有找到快速有效的办法破解。
反正只要拿到cookie保存下来就可以进行抓取操作啦。
数据管道pipeline存入MySQL数据库:
MySQL支配好之后只要输入自己的用户名密码就可以存到数据库当中去
由于我的创建表格没有写到pipeline中,就先自己建好数据库和表格好了:
须要把稳的是:为了让mysql正常显示中文,在建立数据库的时候利用如下语句:
创建 表格followinfo
创建表格tweets
中间组建middleware:
设置干系settings:
数据爬取效果展示:
总结
1、学习理解scrapy框架写代码熟习数据流的流程收成还是很多的。
2、觉得不是太繁芜的网站该当都是可以抓的。形成了自己的一套系统知识体系,详细情形详细剖析吧。
3、验证码这块大略的还能识别,繁芜的可能得轻微用点深度学习了,识别率很一样平常,暂时还是人工输入吧。
4、爬虫只是很入门的技能,后续须要学的东西还好多。
小伙伴们都会了吗?赶紧去试试吧!
Coding symbol on virtual screen about developing
Python系统学习资料、电子书、***、问题解答等等,私信小编发送我要资料,就能自动获取了!
本文系作者个人观点,不代表本站立场,转载请注明出处!