常用的高效爬虫框架和项目

  • 看了阿里云云栖社的一片文章,和其他地方的资料,然后对常用的爬虫框架和项目做了下整理。

常用Python爬虫框架简介

  • Scrapy
# Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 
# 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。
# 用这个框架可以轻松爬下来如亚马逊商品信息之类的数据。
# 文档地址:https://scrapy.org/
  • PySpider
# pyspider 是一个用python实现的功能强大的网络爬虫系统,能在浏览器界面上进行脚本的编写,功能的调度和爬取结果的实时查看,后端使用常用的数据库进行爬取结果的存储,还能定时设置任务与任务优先级等。
# 文档地址:https://github.com/binux/pyspider
  • Crawley
# Crawley可以高速爬取对应网站的内容,支持关系和非关系数据库,数据可以导出为JSON、XML等。
# 文档地址:http://project.crawley-cloud.com/
  • Portia
# Portia是一个开源可视化爬虫工具,可让您在不需要任何编程知识的情况下爬取网站!简单地注释您感兴趣的页面,Portia将创建一个蜘蛛来从类似的页面提取数据。
# 文档地址:https://github.com/scrapinghub/portia
  • Newspaper
# Newspaper可以用来提取新闻、文章和内容分析。使用多线程,支持10多种语言等。
# 文档地址:https://github.com/codelucas/newspaper
  • Beautiful Soup
# Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.
# 它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.
# Beautiful Soup会帮你节省数小时甚至数天的工作时间。
# 文档地址: https://www.crummy.com/software/BeautifulSoup/bs4/doc/
  • Grab
# Grab是一个用于构建Web刮板的Python框架。借助Grab,您可以构建各种复杂的网页抓取工具,从简单的5行脚本到处理数百万个网页的复杂异步网站抓取工具。Grab提供一个API用于执行网络请求和处理接收到的内容,例如与HTML文档的DOM树进行交互。
# http://docs.grablib.org/en/latest/#grab-spider-user-manual.
  • Cola
# Cola是一个分布式的爬虫框架,对于用户来说,只需编写几个特定的函数,而无需关注分布式运行的细节。任务会自动分配到多台机器上,整个过程对用户是透明的。
# 文档地址:https://github.com/chineking/cola

23个爬虫项目

1、公众号爬虫

基于搜狗微信搜索的公众号爬虫接口,可以扩展成基于搜狗搜索的爬虫,返回结果是列表,每一项均是公众号具体信息字典。

github地址:https://github.com/Chyroc/WechatSogou

2、豆瓣读书爬虫

可以爬下豆瓣读书标签下的所有图书,按评分排名依次存储,存储到Excel中,可方便大家筛选搜罗,比如筛选评价人数>1000的高分书籍;可依据不同的主题存储到Excel不同的Sheet ,采用User Agent伪装为浏览器进行爬取,并加入随机延时来更好的模仿浏览器行为,避免爬虫被封。

github地址:https://github.com/lanbing510/DouBanSpider

3、知乎爬虫

此项目的功能是爬取知乎用户信息以及人际拓扑关系,爬虫框架使用scrapy,数据存储使用mongo

github地址:https://github.com/LiuRoy/zhihu_spider

4、Bilibili用户爬虫

总数据数:20119918,抓取字段:用户id,昵称,性别,头像,等级,经验值,粉丝数,生日,地址,注册时间,签名,等级与经验值等。抓取之后生成B站用户数据报告。

github地址:https://github.com/airingursb/bilibili-user

5、新浪微博爬虫

主要爬取新浪微博用户的个人信息、微博信息、粉丝和关注。代码获取新浪微博Cookie进行登录,可通过多账号登录来防止新浪的反扒。主要使用 scrapy 爬虫框架。

github地址:https://github.com/LiuXingMing/SinaSpider

6、小说下载分布式爬虫

使用scrapy,Redis, MongoDB,graphite实现的一个分布式网络爬虫,底层存储MongoDB集群,分布式使用Redis实现,爬虫状态显示使用graphite实现,主要针对一个小说站点。

github地址:https://github.com/gnemoug/distribute_crawler

7、中国知网爬虫

设置检索条件后,执行src/CnkiSpider.py抓取数据,抓取数据存储在/data目录下,每个数据文件的第一行为字段名称。

github地址:https://github.com/yanzhou/CnkiSpider

8、链家网爬虫

爬取北京地区链家历年二手房成交记录。涵盖链家爬虫一文的全部代码,包括链家模拟登录代码。

github地址:https://github.com/lanbing510/LianJiaSpider

9、京东爬虫

基于scrapy的京东网站爬虫,保存格式为csv。

github地址:https://github.com/taizilongxu/scrapy_jingdong

10、QQ 群爬虫

批量抓取 QQ 群信息,包括群名称、群号、群人数、群主、群简介等内容,最终生成 XLS(X) / CSV 结果文件。

github地址:https://github.com/caspartse/QQ-Groups-Spider

11、乌云爬虫

乌云公开漏洞、知识库爬虫和搜索。全部公开漏洞的列表和每个漏洞的文本内容存在MongoDB中,大概约2G内容;如果整站爬全部文本和图片作为离线查询,大概需要10G空间、2小时(10M电信带宽);爬取全部知识库,总共约500M空间。漏洞搜索使用了Flask作为web server,bootstrap作为前端。

https://github.com/hanc00l/wooyun_public

12、hao123网站爬虫

以hao123为入口页面,滚动爬取外链,收集网址,并记录网址上的内链和外链数目,记录title等信息,windows7 32位上测试,目前每24个小时,可收集数据为10万左右

github地址:https://github.com/simapple/spider

13、机票爬虫(去哪儿和携程网)

Findtrip是一个基于Scrapy的机票爬虫,目前整合了国内两大机票网站(去哪儿 + 携程)。

github地址:https://github.com/fankcoder/findtrip

14、基于requests、MySQLdb、torndb的网易客户端内容爬虫

github地址:https://github.com/leyle/163spider

15、豆瓣电影、书籍、小组、相册、东西等爬虫集

github地址:https://github.com/fanpei91/doubanspiders

16、QQ空间爬虫,包括日志、说说、个人信息等,一天可抓取 400 万条数据

github地址:https://github.com/LiuXingMing/QQSpider

17、百度mp3全站爬虫,使用redis支持断点续传

github地址:https://github.com/Shu-Ji/baidu-music-spider

18、 淘宝和天猫的爬虫,可以根据搜索关键词,物品id来抓去页面的信息,数据存储在mongodb。

github地址:https://github.com/pakoo/tbcrawler

19、一个股票数据(沪深)爬虫和选股策略测试框架。根据选定的日期范围抓取所有沪深两市股票的行情数据。支持使用表达式定义选股策略。支持多线程处理。保存数据到JSON文件、CSV文件。

github地址:https://github.com/benitoro/stockholm

20、百度云盘爬虫

github地址:https://github.com/k1995/BaiduyunSpider

21、社交数据爬虫。支持微博,知乎,豆瓣。

github地址:https://github.com/Qutan/Spider

22、Python爬虫代理IP池(proxy pool)。

github地址:https://github.com/jhao104/proxy_pool

23、爬取网易云音乐所有歌曲的评论。

github地址:https://github.com/RitterHou/music-163

转载于:https://my.oschina.net/chinahufei/blog/2961028

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值