scrapy爬虫 函数间传值简易教程
2017-05-09 11:06
239 查看
2017-03-27
有的时候我们爬取数据的时候需要在多个页面之间跳转,爬取完所有页面的数据的时候才能把所有数据一起存到数据库,这个时候我们就需要把某个函数内爬取的数据传到下一个函数当中。
有人可能会说,为什么不用全局变量呢?这是因为scrapy自带多线程机制,好几个线程同时跑,用全局变量很不明智,除非顺序逻辑非常清楚的程序。
这个时候我们就要用到scrapy中Request方法的meta参数
def first(self, response)
code = response.xpath('*****').extract()[0]
yield FormRequest(url=url,meta={'code':code},formdata={},callback=self.next)
#meta和formdata属性一样,是一个字典,这里面我们把从网页中爬取到的code值放在meta中传入下一个函数
def next(self, response)
code = response.meta["code"]
#在下一个函数当中我们就可以从response对象当中取得meta中的code值,这里就可以确保两个函数中code的值是完全一致的。
相关文章推荐
- [Python]网络爬虫(12):爬虫框架Scrapy的第一个爬虫示例入门教程
- python Scrapy 框架做爬虫 ——很好的教程
- [Python]网络爬虫(12):爬虫框架Scrapy的第一个爬虫示例入门教程
- Python的爬虫程序编写框架Scrapy入门学习教程
- Python的爬虫程序编写框架Scrapy入门学习教程
- Scrapy爬虫教程之URL解析与递归爬取
- 【Go入门教程5】流程(if、goto、for、switch)和函数(多个返回值、变参、传值与传指针、defer、函数作为值/类型、Panic和Recover、main函数和init函数、import)
- 爬虫第一步:scrapy-安装教程
- Python爬虫教程——进阶一之爬虫框架Scrapy安装配置
- [Python]网络爬虫(12):爬虫框架Scrapy的第一个爬虫示例入门教程
- Scrapy系列教程(3)------Spider(爬虫核心,定义链接关系和网页信息抽取)
- [Python]网络爬虫(12):爬虫框架Scrapy的第一个爬虫示例入门教程
- [Python]网络爬虫(12):爬虫框架Scrapy的第一个爬虫示例入门教程
- Python爬虫教程——进阶一之爬虫框架Scrapy安装配置
- 爬虫框架Scrapy的第一个爬虫示例入门教程
- [Python]网络爬虫(12):爬虫框架Scrapy的第一个爬虫示例入门教程
- scrapy 入门教程 爬虫 Spider
- Scrapy安装、爬虫入门教程、爬虫实例(豆瓣电影爬虫)
- c++快速简易入门教程_004函数的重载
- Scrapy定向爬虫教程(二)——提取网页内容