爬行:“查询字符串参数”和“请求有效负载”之间的差异

问题描述 投票:3回答:1

我正在尝试使用Scrapy爬行ajax网站,网址是http://www.target.com/p/bounty-select-a-size-white-paper-towels-12-mega-rolls/-/A-14920157#prodSlot=medium_1_2&term=bounty

我的目标是获得商店ID。我通过检查chrome开发人员工具中的所有XHR请求并找到名称(“v1?request type = availability key = .....”)的那个是我想要的那个。

我的问题是:

  1. 在开发人员工具中,有“查询字符串参数”,它似乎是请求网址的?之后的部分。还有Request Payload部分,它是一个json。那么我应该使用哪一个发送到服务器?如果我需要请求有效负载,我该如何发送json文件?
  2. 当我发送整个网址来获取json:https://api.target.com/available_to_promise_aggregator/v1?request_type=availability&key=q0jGNkIyuqUTYIlzZKoCfK6ugaNGSP8h

我得到“请求方法'GET'不受支持”,所以我应该使用POST代替还是我做错了什么?

json web-scraping scrapy
1个回答
0
投票

您猜测,您必须在?之后将查询字符串作为URL的一部分发送。

要在请求中包含JSON有效内容,并将请求作为POST请求发送,请使用use the method and body parameters类的Request

© www.soinside.com 2019 - 2024. All rights reserved.