Python 经典开源爬虫案例

下面是我整理的一些 GitHub 上面经典的开源爬虫项目,涵盖的比较全面,供大家学习使用。

WechatSogou

微信公众号爬虫

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

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

DouBanSpider

豆瓣读书爬虫

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

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

zhihu_spider

知乎爬虫

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

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

bilibili-user

Bilibili用户爬虫

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

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

SinaSpider

新浪微博爬虫

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

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

distribute_crawler

小说下载分布式爬虫

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

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

CnkiSpider

中国知网爬虫

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

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

LianJiaSpider

链家网爬虫

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

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

scrapy_jingdong

京东爬虫

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

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

QQ-Groups-Spider

QQ 群爬虫

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

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

wooyun_public

乌云爬虫

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

GitHub 地址:https://github.com/hanc00l/wooyun_public

spider

hao123网站爬虫

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

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

findtrip

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

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

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

QQSpider

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

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

baidu-music-spider

百度音乐爬虫

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

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

tbcrawler

淘宝天猫商品爬虫

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

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

stockholm

股票数据(沪深)爬虫

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

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

BaiduyunSpider

百度云盘爬虫

分布式百度网盘爬虫,使用当前最流行的技术框架。适合个人学习以及二次开发。爬虫基于 Scrapy,灵活简单、易扩展,方便二次开发。使用 Scrapy-Redis 作为分布式中间件,可同时部署多个爬虫实例,以提升采集效率。Web后台管理基于React,Material Design 设计风格。

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

Spider

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

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

proxy pool

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

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

music-163

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

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

jandan_spider

爬取煎蛋妹纸图片。

GitHub 地址:https://github.com/kulovecc/jandan_spider

CnblogsSpider

cnblogs列表页爬虫。

GitHub 地址:https://github.com/jackgitgz/CnblogsSpider

spider_smooc

爬取慕课网视频。

GitHub 地址:https://github.com/qiyeboy/spider_smooc

knowsecSpider2

知道创宇爬虫题目。

GitHub 地址:https://github.com/littlethunder/knowsecSpider2

csdn-spider

爬取CSDN上的博客文章。

GitHub 地址:https://github.com/Kevinsss/csdn-spider

ProxySpider

爬取西刺上的代理 IP,并验证代理可用性。

GitHub 地址:https://github.com/changetjut/ProxySpider