scrapy多个爬虫公用一些中间件pipelines
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了scrapy多个爬虫公用一些中间件pipelines相关的知识,希望对你有一定的参考价值。
使用python3
请求头headers:user-agent、代理ip,这些放在一个工程项目里,有的爬虫是需要中间件的或者根据反爬添加相应的条件,那这样的情况下怎么办?
1.中间件处理默认带上请求头,不带启用ip代理功能
spiders文件夹下的爬虫类添加属性
中间件处理
这样不管爬虫那边有没有添加属性,middlewares里就是会默认
2.有些情况下请求头会带上cookie、referer,这样的话,只需要user_agent = False,这样在爬虫里面编写自己需要的headers
那么多的爬虫,每一个可能数据格式、存数据库不同,怎么区分它们呢?
1.在items里面做文章
每一个爬虫的数据可能都要创建items类,我们把公用的部分提出来,写到基类里面去!
2.根据items判断pipelines入库
一定是items项目类,不能使用基类!
3.或者根据文件的文件名、类名、方法,判断启用那个,这种适合很多类型的情况下
建个文件夹,
==>>>
然后在改一些相应的源码,这里不详细说明!
以上是关于scrapy多个爬虫公用一些中间件pipelines的主要内容,如果未能解决你的问题,请参考以下文章
python爬虫之Scrapy框架中的Item Pipeline用法