scrapy - Scrapy请求url来自哪个url响应
问题描述
对于 Scrapy,我们可以得到 response.url、response.request.url,但是我们怎么知道 response.url、response.request.url 是从哪个父 url 中提取的呢?
谢谢你,肯
解决方案
您可以使用Request.meta来跟踪此类信息。
当您提出请求时,请response.url
在元数据中包含:
yield response.follow(link, …, meta={'source_url': response.url})
然后在你的解析方法上阅读它:
source_url = response.meta['source_url']
这是最直接的方法,如果您愿意,您可以使用此方法跟踪原始 URL,即使跨不同的解析方法。
否则,您可能需要考虑利用redirect_urls
元键来跟踪重定向跳转。
推荐阅读
- reactjs - 如何为我的第一个天气应用获取 api?
- android - 使用后退按钮退出应用程序后,我只能从共享偏好中获取值
- scheme - 什么是方案中的“字符串映射”?
- r - Dtedit Shiny R中的Depandant选择输入
- javascript - ecma262中的赋值表达式
- python - Python Crash Course - Project Alien Invasion - 第 13 章问题
- r - 提取第 n 次出现的两个符号之间的字符串
- javascript - 如何允许用户创建新页面并将其保存在服务器端?
- fastify - Fastify 模式无法验证嵌套对象的属性类型
- c++ - 如何修改此二叉搜索树 ADT 以实现优先队列 ADT?