python - 如何在 Python 中重新运行 scrapy 请求对象?
问题描述
我正在使用 Scrapy,在 response_is_ban 函数中,我有两个对象,一个 {Request} 对象和一个 {Response} 对象。
from scrapy.http import Request
由于某种原因,Scrapy 请求返回的结果与标准 Curl 不同。
有没有办法可以重新运行 {Request} 对象?
就像是:
response = request.get_again()
目标是弄清楚我的 Curl 函数和 Scrapy 请求对象之间究竟有什么不同,以及为什么它们会返回不同的结果。任何建议都会受到欢迎。
编辑:我的另一个问题是,Scrapy 在代码中实际执行请求的位置是什么?是否有一个 request.get() 函数可以在某个地方放置调试点?
解决方案
对于调试,您可以fetch
在scrapy.shell
会话中使用:https ://docs.scrapy.org/en/latest/topics/shell.html#invoking-the-shell-from-spiders-to-inspect-responses
推荐阅读
- python - Flask sqlalchemy 过滤每个对象的关系中的对象
- javascript - 混合应用开发过程中调用ios javascript接口的问题
- javascript - 根据特定索引中的 2 个或多个值过滤嵌套数组
- mysql - node.js mysql查询从数组更新
- python-3.x - 数组的条件作为参数传递给 lambda 函数
- kubernetes - 有没有办法在 pod 迁移到另一个应用程序节点之前告诉它在哪里
- javascript - 修复传递给 api 的字符串中的换行问题
- javascript - Create object from two array with custom key
- java - LWJGL 本地人 os + JPMS + GRADLE
- c++ - 除非存在 libstdc++-6.dll,否则使用命令行命令或通过 VS Code 编译 C++ 程序无法正常运行