当前位置:网站首页>scrapy返回400

scrapy返回400

2022-06-26 02:19:00 0&1菜菜

  • 场景
    使用scrapy对数据进行抓取,需要传递的参数是Request Payload参数,使用Resquest发送post请求
  • 代码如下
    这是返回400的代码
yield scrapy.Request(url=url,
             method="POST",
             headers={
    "Content-Type":"application/json","Host":"web.hi-teeth.com","Content-Length":"18"},
             encoding="utf-8",
             body=json.dumps({
    "key":"value"}),
             dont_filter=True,
             callback=回调函数)
  • 原因
    头部信息中的"Content-Length":"18"造成的错误信息,取消掉就可以,个人任务可能是限制为18造成长度不足的错误

  • 解决方案
    去掉头部信息中的"Content-Length"即可

正确代码

yield scrapy.Request(url=url,
             method="POST",
             headers={
    "Content-Type":"application/json","Host":"web.hi-teeth.com"},
             encoding="utf-8",
             body=json.dumps({
    "key":"value"}),
             dont_filter=True,
             callback=回调函数)

有知道正确原因的同学可以指导一下,万分感谢

原网站

版权声明
本文为[0&1菜菜]所创,转载请带上原文链接,感谢
https://blog.csdn.net/Caiabcd/article/details/125436449