如何使用Session mount进行站点呼叫



我需要通过使用线程进行多次调用,但是当挂载会话时,http协议给了我一个糟糕的请求错误


gateway = ApiGateway("https://my.com/plp_search_v2",   access_key_id=aws_access_key_id, access_key_secret=aws_secret_access_id, regions=EXTRA_REGIONS)

url = "https://my.com/plp_search_v2"
header={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) 
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36'}
params = {
"key": "9f36aeafbe60771e321a7cc95a78140772ab3e96",
"category": "ziogr",
"channel": "WEB",
"count": "24",
}
session = requests.Session()
session.mount("https://", gateway)
session.mount("http://", gateway)
response = session.get(url, params=params, headers=header)

我正试图使用AWS的API网关来调用该URI,我不知道为什么没有会话。挂载行

服务总是检索400个错误请求,我们需要多次调用aws代理来检索一些信息。

有一种方法可以改进这种调用,通过每次调用API来获得更熟练的结果

我使用url parse lib从url中删除路径,然后重新执行网关挂载到会话

是这样的

url = "https://redsky.target.com/redsky_aggregations/v1/web/plp_search_v2"
src_parsed = urlparse(url)
src_nopath = "%s://%s" % (src_parsed.scheme, src_parsed.netloc)
session = requests.Session()
session.mount(src_nopath, gateway)
response = session.get(url, stream=True, params=params, headers=header)

最新更新