一、爬虫是什么?

如果我们把互联网比作一张大的蜘蛛网,数据便是存放于蜘蛛网的各个节点,而爬虫就是一只小蜘蛛,沿着网络抓取自己的猎物(数据)爬虫指的是:向网站发起请求,获取资源后分析并提取有用数据的程序。

从技术层面来说就是通过程序模拟浏览器请求站点的行为,把站点返回的HTML代码/JSON数据/二进制数据(图片、视频) 爬到本地,进而提取自己需要的数据,存放起来使用;

1、爬虫大概流程:

爬取--->解析--->存储

2、爬虫所需工具:

 请求库:requests,selenium(可以驱动浏览器解析渲染CSS和JS,但有性能劣势(有用没用的网页都会加载);)
 解析库:正则,beautifulsoup,pyquery
 存储库:文件,MySQL,Mongodb,Redis

二、爬虫项目

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

  • 链接:https://github.com/Chyroc/WechatSogou

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

  • 链接:https://github.com/lanbing510/DouBanSpider

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

  • 链接:https://github.com/LiuRoy/zhihu_spider

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

  • 链接:https://github.com/airingursb/bilibili-user

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

  • 链接:https://github.com/LiuXingMing/SinaSpider

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

  • 链接:https://github.com/gnemoug/distribute_crawler

CnkiSpider [7]- 中国知网爬虫。设置检索条件后,执行src/CnkiSpider.py抓取数据,抓取数据存储在/data目录下,每个数据文件的第一行为字段名称。

  • 链接:https://github.com/yanzhou/CnkiSpider

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

  • 链接:https://github.com/yanzhou/CnkiSpider

scrapy_jingdong [9]- 京东爬虫。基于scrapy的京东网站爬虫,保存格式为csv。

  • 链接:https://github.com/taizilongxu/scrapy_jingdong

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

  • 链接:https://github.com/caspartse/QQ-Groups-Spider

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

  • 链接:https://github.com/hanc00l/wooyun_public

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

  • 链接:https://github.com/hanc00l/wooyun_public

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

  • 链接:https://github.com/hanc00l/wooyun_public

163spider [14] - 基于requests、MySQLdb、torndb的网易客户端内容爬虫。

  • 链接:https://github.com/leyle/163spider

doubanspiders[15]- 豆瓣电影、书籍、小组、相册、东西等爬虫集 writen by Python

  • 链接:https://github.com/sdfzy/doubanspiders

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

  • 链接:https://github.com/LiuXingMing/QQSpider

baidu-music-spider [17]- 百度mp3全站爬虫,使用redis支持断点续传。

  • 链接:https://github.com/Shu-Ji/baidu-music-spider

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

  • 链接:https://github.com/pakoo/tbcrawler

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

  • 链接:https://github.com/benitoro/stockholm

BaiduyunSpider[20]-百度云盘爬虫。

  • 链接:https://github.com/k1995/BaiduyunSpider

Spider[21]-社交数据爬虫。支持微博,知乎,豆瓣。

  • 链接:https://github.com/Qutan/Spider

proxy pool[22]-Python爬虫代理IP池(proxy pool)。

  • 链接:https://github.com/Qutan/Spider

music-163[23]-爬取网易云音乐所有歌曲的评论。

  • 链接:https://github.com/RitterHou/music-163

CnblogsSpider[24]-cnblogs列表页爬虫。

  • 链接:https://github.com/jackgitgz/CnblogsSpider

spider_smooc[25]-爬取慕课网视频。

  • 链接:https://github.com/jackgitgz/CnblogsSpider

knowsecSpider2[26]-知道创宇爬虫题目。

  • 链接:https://github.com/littlethunder/knowsecSpider2

SinaSpider[27]-动态IP解决新浪的反爬虫机制,快速抓取内容。

  • 链接:https://github.com/szcf-weiya/SinaSpider

csdn-spider[28]-爬取CSDN上的博客文章。

  • 链接:https://github.com/Kevinsss/csdn-spider

ProxySpider[29]-爬取西刺上的代理IP,并验证代理可用性。

  • 链接:https://github.com/changetjut/ProxySpider

【附源码】想成为Python爬虫高手,这29个爬虫项目不容错过相关推荐

  1. [附源码]计算机毕业设计Python+uniapp汽车票管理系统APP65qfl(程序+lw+APP+远程部署)

    [附源码]计算机毕业设计Python+uniapp汽车票管理系统APP65qfl(程序+lw+APP+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: P ...

  2. [附源码]计算机毕业设计Python+uniapp智能公交查询APP59sm2(程序+lw+APP+远程部署)

    [附源码]计算机毕业设计Python+uniapp智能公交查询APP59sm2(程序+lw+APP+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Py ...

  3. [附源码]计算机毕业设计Python+uniapp基于安卓的校园跑腿代购476ww(程序+lw+APP+远程部署)

    [附源码]计算机毕业设计Python+uniapp基于安卓的校园跑腿代购476ww(程序+lw+APP+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: ...

  4. [附源码]计算机毕业设计Python+uniapp作业批改系统APP4238p(程序+lw+APP+远程部署)

    [附源码]计算机毕业设计Python+uniapp作业批改系统APP4238p(程序+lw+APP+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Py ...

  5. [附源码]计算机毕业设计Python+uniapp学生选课APP3cnsl(程序+lw+APP+远程部署)

    [附源码]计算机毕业设计Python+uniapp学生选课APP3cnsl(程序+lw+APP+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Pyth ...

  6. [附源码]计算机毕业设计Python+uniapp基于Android 工厂考勤系统4h291(程序+源码+LW+远程部署)

    [附源码]计算机毕业设计Python+uniapp基于Android 工厂考勤系统4h291(程序+源码+LW+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境 ...

  7. [附源码]计算机毕业设计Python+uniapp基于Android的自来水收费系统3e359(程序+源码+LW+远程部署)

    [附源码]计算机毕业设计Python+uniapp基于Android的自来水收费系统3e359(程序+源码+LW+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环 ...

  8. [附源码]计算机毕业设计Python+uniapp篮球竞技系统APPo206c(程序+lw+APP+远程部署)

    [附源码]计算机毕业设计Python+uniapp篮球竞技系统APPo206c(程序+lw+APP+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Py ...

  9. [附源码]计算机毕业设计Python+uniapp安卓门禁系统appo8yd7(程序+源码+LW+远程部署)

    [附源码]计算机毕业设计Python+uniapp安卓门禁系统appo8yd7(程序+源码+LW+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Pyt ...

  10. [附源码]计算机毕业设计Python+uniapp基于Android的校园考勤APPo0400(程序+源码+LW+远程部署)

    [附源码]计算机毕业设计Python+uniapp基于Android的校园考勤APPo0400(程序+源码+LW+远程部署) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环 ...

最新文章

  1. mac php 连接mysql数据库_Mac环境下php操作mysql数据库的方法分享_PHP教程
  2. java = 优化_Java9系列第7篇:Java.util.Optional优化与增强 - 字母哥博客 - 博客园
  3. 用心整理,尽量最全,一套目标检测、卷积神经网络和OpenCV学习资料(教程/PPT/代码)...
  4. MySQL5添加外键约束错误 (Error Code : 1005)
  5. Pycharm 安装
  6. php如何安装源码包,php源码包安装步骤是什么
  7. idea关于连接mysql数据库异常解决的方法
  8. 学***必去的网站“***基地”
  9. 把已经写好的Vue项目转成uni-app项目
  10. 折合分数的公式计算机,高考分数换算公式(高考分数折合怎么算)
  11. 北卡州立大学计算机科学硕士,北卡罗莱纳州立大学计算机科学专业研究生申请条件有哪些?...
  12. 红外解决方案(用于工业、民用、国防和安全应用)的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  13. vue中自定义组件的用法(企业微信通讯录选人)
  14. Tableau笔记(10)转置和拆分
  15. 开源中国源码学习UI篇(一)之FragmentTabHost的使用分析
  16. mysql 报错1366
  17. MySQL之悲观锁场景举例
  18. 两个卡方分布之和_正态分布样本均值和样本方差的独立性
  19. 易语言时间转化linux格式,易语言取时间年月日格式化
  20. 《51单片机》用STC-ISP-15XX-V6.85F烧录程序的步骤

热门文章

  1. [2011-04-24]商学院是干什么的?
  2. 水滴递交IPO申请:拟纽交所上市,募资1亿美元
  3. 等价类划分经典实例-三角形测试用例设计
  4. 机器学习--处理回归问题常用算法
  5. 【UV打印机】PrintExp打印软件教程(一)-启动和联机
  6. python物联网全栈开发实践
  7. JavaScript - 判断浏览器内的页面是在手机端还是电脑(PC)上打开的(判断用户访问设备是什么)
  8. scsi设备驱动体系架构
  9. 网络无法找到计算机6,电脑中玩文明6局域网联机游戏找不到房间如何解决
  10. FTXUI基础笔记(botton按钮组件进阶)