上手简单,功能强大的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程序的执行效率的教程
Apr 02 Python
详解Python list 与 NumPy.ndarry 切片之间的对比
Jul 24 Python
Python利用matplotlib.pyplot绘图时如何设置坐标轴刻度
Apr 09 Python
分享一下Python数据分析常用的8款工具
Apr 29 Python
Tensorflow使用tfrecord输入数据格式
Jun 19 Python
Python面向对象之类的封装操作示例
Jun 08 Python
pandas实现将dataframe满足某一条件的值选出
Jun 12 Python
PyQT5 QTableView显示绑定数据的实例详解
Jun 25 Python
Python操作Excel工作簿的示例代码(\*.xlsx)
Mar 23 Python
详解Anaconda 的安装教程
Sep 23 Python
python爬虫筛选工作实例讲解
Nov 23 Python
python Matplotlib基础--如何添加文本和标注
Jan 26 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
点评山进PR-D3L三波段收音机
2021/03/02 无线电
phpcms模块开发之swfupload的使用介绍
2013/04/28 PHP
页面乱码问题的根源及其分析
2013/08/09 PHP
一组PHP可逆加密解密算法实例代码
2014/01/21 PHP
thinkphp文件引用与分支结构用法实例
2014/11/26 PHP
PHP实现一维数组转二维数组的方法
2015/02/25 PHP
[原创]PHP简单开启curl的方法(测试可行)
2016/01/11 PHP
php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】
2016/12/07 PHP
window.showModalDialog使用手册
2007/01/11 Javascript
通过复制Table生成word和excel的javascript代码
2014/01/20 Javascript
js图片处理示例代码
2014/05/12 Javascript
jQuery的Scrollify插件实现滑动到页面下一节点
2015/07/05 Javascript
IE6兼容透明背景图片及解决方案
2015/08/19 Javascript
使用Vue组件实现一个简单弹窗效果
2018/04/23 Javascript
JS在if中的强制类型转换方式
2018/07/15 Javascript
JavaScript常用数组操作方法,包含ES6方法
2020/05/10 Javascript
JS实现的小火箭发射动画效果示例
2018/12/08 Javascript
Vue实现多页签组件
2021/01/14 Vue.js
python异步任务队列示例
2014/04/01 Python
python解析基于xml格式的日志文件
2017/02/25 Python
在Python中调用Ping命令,批量IP的方法
2019/01/26 Python
python实现烟花小程序
2019/01/30 Python
python常用函数与用法示例
2019/07/02 Python
使用pycharm在本地开发并实时同步到服务器
2019/08/02 Python
python json load json 数据后出现乱序的解决方案
2020/02/27 Python
Python自动化之UnitTest框架实战记录
2020/09/08 Python
应届毕业生的个人自我鉴定
2013/10/24 职场文书
应届生会计求职信
2013/11/11 职场文书
篮球比赛拉拉队口号
2014/06/10 职场文书
小学清明节活动总结
2014/07/04 职场文书
材料物理专业求职信
2014/09/01 职场文书
思想作风整顿个人剖析材料
2014/10/06 职场文书
写给老婆的保证书
2015/02/27 职场文书
公司行政主管岗位职责
2015/04/09 职场文书
2016年“我们的节日·清明节”活动总结
2016/04/01 职场文书
python自动计算图像数据集的RGB均值
2021/06/18 Python