我正在产生一个重定向到另一个页面的请求,这告诉我我正在制作的请求有问题。从我的代码看起来很好,所以我想在发送之前检查请求。
我希望我可以使用调试记录器向我显示响应,但这只能告诉我:
self.logger.debug('Request: %s', req) # req = FormRequest
2017-01-03 11:01:17 [spider] DEBUG: Request: <POST https://website.com>
虽然我也希望看到随此请求提交的Cookie,标题和数据。
理想情况下,我想知道如何使用一个函数/变量来查看整个请求。
有什么建议吗?
答案 0 :(得分:0)
默认字符串表示仅包含方法和URL(source)。您可以使用request_to_dict
util函数并以您喜欢的任何方式格式化输出:
def log_request(req):
self.logger.debug('url: {url}, body: {body}, cookies: {cookies}, headers: {headers}'.format(
**request_to_dict(req)
))
(或者只记录整个字典)
还有COOKIES_DEBUG
设置,如果设置为True
,则会记录所有收到和发送的Cookie。