# FEAPDER ![](https://img.shields.io/badge/python-3.6-brightgreen) ![](https://img.shields.io/github/watchers/Boris-code/feapder?style=social) ![](https://img.shields.io/github/stars/Boris-code/feapder?style=social) ![](https://img.shields.io/github/forks/Boris-code/feapder?style=social) [![Downloads](https://pepy.tech/badge/feapder)](https://pepy.tech/project/feapder) [![Downloads](https://pepy.tech/badge/feapder/month)](https://pepy.tech/project/feapder) [![Downloads](https://pepy.tech/badge/feapder/week)](https://pepy.tech/project/feapder) <a href="http://feapder.com" target="_blank"> <img src="http://markdown-media.oss-cn-beijing.aliyuncs.com/2022/03/04/16463743547431.jpg"> </a> ## 简介 **feapder是一款上手简单,功能强大的Python爬虫框架** 读音: `[ˈfiːpdə]` ### 1.拥有强大的监控,保障数据质量 ![](http://markdown-media.oss-cn-beijing.aliyuncs.com/2022/10/12/16655595870715.jpg) 监控面板:[点击查看详情](http://feapder.com/#/feapder_platform/feaplat) ### 2. 内置多维度的报警(支持 钉钉、企业微信、飞书、邮箱) ![](http://markdown-media.oss-cn-beijing.aliyuncs.com/2020/12/20/16084718974597.jpg) ![](http://markdown-media.oss-cn-beijing.aliyuncs.com/2020/12/29/16092335882158.jpg) ![](http://markdown-media.oss-cn-beijing.aliyuncs.com/2020/12/20/16084718683378.jpg) ### 3. 简单易用,内置四种爬虫,可应对各种需求场景 - `AirSpider` 轻量爬虫:学习成本低,可快速上手 - `Spider` 分布式爬虫:支持断点续爬、爬虫报警等功能,可加快爬虫采集速度 - `TaskSpider` 任务爬虫:从任务表里取任务做,内置支持对接redis、mysql任务表,亦可扩展其他任务来源 - `BatchSpider` 批次爬虫:可周期性的采集数据,自动将数据按照指定的采集周期划分。(如每7天全量更新一次商品销量的需求) **feapder**对外暴露的接口类似scrapy,可由scrapy快速迁移过来。支持**断点续爬**、**数据防丢**、**监控报警**、**浏览器渲染下载**、**海量数据去重**等功能 ## 文档地址 - 官方文档:http://feapder.com - 境外文档:https://boris.org.cn/feapder - github:https://github.com/Boris-code/feapder - 更新日志:https://github.com/Boris-code/feapder/releases - 爬虫管理系统:http://feapder.com/#/feapder_platform/feaplat ## 环境要求: - Python 3.6.0+ - Works on Linux, Windows, macOS ## 安装 From PyPi: 通用版 ```shell pip3 install feapder ``` 完整版: ```shell pip3 install feapder[all] ``` 通用版与完整版区别: 1. 完整版支持基于内存去重 完整版可能会安装出错,若安装出错,请参考[安装问题](https://boris.org.cn/feapder/#/question/%E5%AE%89%E8%A3%85%E9%97%AE%E9%A2%98) ## 小试一下 创建爬虫 ```shell feapder create -s first_spider ``` 创建后的爬虫代码如下: ```python import feapder class FirstSpider(feapder.AirSpider): def start_requests(self): yield feapder.Request("https://www.baidu.com") def parse(self, request, response): print(response) if __name__ == "__main__": FirstSpider().start() ``` 直接运行,打印如下: ```shell Thread-2|2021-02-09 14:55:11,373|request.py|get_response|line:283|DEBUG| -------------- FirstSpider.parse request for ---------------- url = https://www.baidu.com method = GET body = {'timeout': 22, 'stream': True, 'verify': False, 'headers': {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.93 Safari/537.36'}} <Response [200]> Thread-2|2021-02-09 14:55:11,610|parser_control.py|run|line:415|DEBUG| parser 等待任务... FirstSpider|2021-02-09 14:55:14,620|air_spider.py|run|line:80|INFO| 无任务,爬虫结束 ``` 代码解释如下: 1. start_requests: 生产任务 2. parse: 解析数据 ## 爬虫工具推荐 1. 爬虫在线工具库:http://www.spidertools.cn 2. 验证码识别库:https://github.com/sml2h3/ddddocr ## 微信赞赏 如果您觉得这个项目帮助到了您,您可以帮作者买一杯咖啡表示鼓励 🍹 也可和作者交个朋友,解决您在使用过程中遇到的问题 ![赞赏码](http://markdown-media.oss-cn-beijing.aliyuncs.com/2021/03/16/zan-shang-ma.png) ## 学习交流 <table border="0"> <tr> <td> 知识星球:17321694 </td> <td> 作者微信: boris_tm </td> <td> QQ群号:750614606 </td> </tr> <tr> <td> <img src="http://markdown-media.oss-cn-beijing.aliyuncs.com/2020/02/16/zhi-shi-xing-qiu.jpeg" width=250px> </td> <td> <img src="http://markdown-media.oss-cn-beijing.aliyuncs.com/2021/07/12/er-wei-ma.jpeg?x-oss-process=style/markdown-media" width="250px" /> </td> <td> <img src="http://markdown-media.oss-cn-beijing.aliyuncs.com/2021/07/12/16260897330897.jpg" width="250px" /> </td> </tr> </table> 加好友备注:feapder