一年前写了python简单实战项目:《冰与火之歌1-5》角色关系图谱构建
<https://blog.csdn.net/alanconstantinelau/article/details/69817653>的数据库设计
<https://blog.csdn.net/alanconstantinelau/article/details/69951067>和数据可视化共现图谱的构建
<https://blog.csdn.net/AlanConstantineLau/article/details/72146213>
,中间唯独缺了数据的采集,因为想着只是个小爬虫,应该无关痛痒,后面也觉得这个系列缺了这一环不完美。前几天想着还是补上,结果发现一年前写的爬虫失效了,故索性就再写一个,然后就想着直接用上现在主流的scrapy框架以及redis、mongodb这两个Nosql好了,以小见大。
代码上传到了GitHub上,感兴趣的朋友可以移步:代码
<https://github.com/AlanConstantine/WebCrawlerforGameofThrones>
旧爬虫代码(已失效,可做参考)、数据库设计的orm框架内model代码,以及现成抓取好的sqlite数据库均更新到了GitHub上的oldspder文件夹中
新的爬虫需要掌握的知识:
* scrapy
* redis
* mongodb
* xpath
项目在ubuntu16上进行,windows的朋友可以参考崔庆才个人博客 <https://cuiqingcai.com/>
来安装scrapy、redis、mongo
然后再推荐一个大牛的博客——新浪微博分布式爬虫分享
<https://blog.csdn.net/bone_ace/article/details/50904718>
然后在最后提出个问题,就是在运行Scrapy并抓取保存好数据后,scrapy依旧在空跑,百度和google了很多,基本解决方式是通过设定爬虫运行超时时间来关闭,觉得治标不治本,欢迎路过的大神不吝赐教,感恩。
新项目抛弃了sqlite使用mongodb进行储存数据
热门工具 换一换