上手简单,功能强大的Python爬虫框架——feapder


Posted in Python onApril 27, 2021

简介

feapder 是一款上手简单,功能强大的Python爬虫框架,使用方式类似scrapy,方便由scrapy框架切换过来,框架内置3种爬虫:

  • AirSpider爬虫比较轻量,学习成本低。面对一些数据量较少,无需断点续爬,无需分布式采集的需求,可采用此爬虫。
  • Spider是一款基于redis的分布式爬虫,适用于海量数据采集,支持断点续爬、爬虫报警、数据自动入库等功能
  • BatchSpider是一款分布式批次爬虫,对于需要周期性采集的数据,优先考虑使用本爬虫。

feapder除了支持断点续爬、数据防丢、监控报警外,还支持浏览器渲染下载,自定义入库pipeline,方便对接其他数据库(默认数据库为Mysql,数据可自动入库,无需编写pipeline)

读音: [ˈfiːpdə]

环境要求:

  • Python 3.6.0+
  • Works on Linux, Windows, macOS

安装

From PyPi:

通用版

pip3 install feapder

完整版:

pip3 install feapder[all]

通用版与完整版区别:

完整版支持基于内存去重

完整版可能会安装出错,若安装出错,请参考安装问题

小试一下

创建爬虫

feapder create -s first_spider

创建后的爬虫代码如下:

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()

直接运行,打印如下:

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| 无任务,爬虫结束

代码解释如下:

  • start_requests: 生产任务
  • parse: 解析数据

将请求头转为json格式

爬虫采集中,我们经常需要携带网站的header等参数,比如:我们在浏览器检查工具看到某请求头为:

Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Cache-Control: max-age=0
Connection: keep-alive
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36

如果我们想在发请求时携带这个header,那么需要手动将其转为json格式。

使用

输入命令,回车

> feapder create -j
请输入需要转换的内容:(xxx:xxx格式,支持多行)

上手简单,功能强大的Python爬虫框架——feapder

输出如下:

上手简单,功能强大的Python爬虫框架——feapder

另外,feapder还支持创建有序字典,方便对比参数前后的变化

命令为:

feapder create -sj

以上就是上手简单,功能强大的Python爬虫框架——feapder的详细内容,更多关于Python 爬虫框架feapder的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python获取mp3文件信息的方法
Jun 15 Python
Python实现简易端口扫描器代码实例
Mar 15 Python
python如何修改装饰器中参数
Mar 20 Python
pandas数据预处理之dataframe的groupby操作方法
Apr 13 Python
Python全排列操作实例分析
Jul 24 Python
学生信息管理系统python版
Oct 17 Python
基于python实现KNN分类算法
Apr 23 Python
python 动态生成变量名以及动态获取变量的变量名方法
Jan 20 Python
Python函数中不定长参数的写法
Feb 13 Python
用Python+OpenCV对比图像质量的几种方法
Jul 15 Python
python实现windows倒计时锁屏功能
Jul 30 Python
TensorFlow Autodiff自动微分详解
Jul 06 Python
python绘制箱型图
基于Python实现的购物商城管理系统
Apr 27 #Python
详解用Python把PDF转为Word方法总结
python实现的web监控系统
python opencv人脸识别考勤系统的完整源码
Apr 26 #Python
python实现监听键盘
Apr 26 #Python
python如何做代码性能分析
Apr 26 #Python
You might like
PHP开发中的错误收集,不定期更新。
2011/02/03 PHP
PHP中把stdClass Object转array的几个方法
2014/05/08 PHP
PHP基于递归算法解决兔子生兔子问题
2018/05/11 PHP
javascript引用对象的方法代码
2007/08/13 Javascript
JQuery插件开发示例代码
2013/11/06 Javascript
浅析IE10兼容性问题(frameset的cols属性)
2014/01/03 Javascript
JavaScript实现Flash炫光波动特效
2015/05/14 Javascript
JavaScript实现点击按钮字体放大、缩小
2016/02/29 Javascript
js中获取 table节点各tr及td的内容简单实例
2016/10/14 Javascript
js实现键盘自动打字效果
2016/12/23 Javascript
js自定义QQ菜单效果
2017/01/10 Javascript
js实现功能比较全面的全选和多选
2017/03/02 Javascript
基于zepto.js实现手机相册功能
2017/07/11 Javascript
JavaScript学习笔记之函数记忆
2017/09/06 Javascript
JavaScript实现微信号随机切换代码
2018/03/09 Javascript
bootstrapTable+ajax加载数据 refresh更新数据
2018/08/31 Javascript
在vue中使用echarts图表实例代码详解
2018/10/22 Javascript
JS中使用new Option()实现时间联动效果
2018/12/10 Javascript
koa2 用户注册、登录校验与加盐加密的实现方法
2019/07/22 Javascript
[03:09]2014DOTA2国际邀请赛 赛场上的美丽风景线 中国Coser也爱DOTA2
2014/07/20 DOTA
[01:04:20]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第一场 11.29
2020/12/02 DOTA
Python爬虫包 BeautifulSoup  递归抓取实例详解
2017/01/28 Python
基于Django的python验证码(实例讲解)
2017/10/23 Python
PyQt5的安装配置过程,将ui文件转为py文件后显示窗口的实例
2019/06/19 Python
pytorch  网络参数 weight bias 初始化详解
2020/06/24 Python
css3编写浏览器背景渐变背景色的方法
2018/03/05 HTML / CSS
HTML5等待加载动画效果
2017/07/27 HTML / CSS
Book Depository亚太地区:一家领先的国际图书零售商
2019/05/05 全球购物
Ooni英国官网:披萨烤箱
2020/05/31 全球购物
职高毕业生自我鉴定
2013/10/21 职场文书
项目专员岗位职责
2013/12/04 职场文书
店长职务说明书
2014/02/04 职场文书
小学校园文化建设汇报材料
2014/08/19 职场文书
治庸问责心得体会
2014/09/12 职场文书
2019企业给员工的慰问信
2019/06/24 职场文书
创业计划书之餐饮馄饨店
2019/07/18 职场文书