Scrapy-基础-Spider内不同级别parse传递参数
本文最后更新于:2021年2月5日 下午
问题描述
并不是每一个网站都将你想要的所有信息放在最内层页面的
可能需要在不同层级的请求中获取不同的参数,共同组成最后的item
。
如果不懂得在不同层级的parse
中传递参数,那么最后的item
会缺失一些信息。
处理
Spider
的Request
请求经过处理后,最终会返回一个Response
,被回调函数callback
处理
如果想要传递数据,有两种处理方式:
- 在
Request
中添加meta
参数(官方不推荐) - 使用
Request
的cb_kwargs
属性
使用meta参数
我们可以在Request
中添加meta
参数,记录需要传递的信息meta
参数所附带的信息最终会被Response
返回meta
参数可传递 简单类型参数 或 对象类型参数
案例:使用
Request
的meta
参数传递数据
1 |
|
使用Request
的cb_kwargs
属性
将需要传递的内容用Request
的cb_kwargs
属性保存
待到下级解析的时候,从参数中获取即可
案例:使用
Request
的cb_kwargs
属性传递数据
1 |
|
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!