如何使用Python的Requests模块发送超长URL
这个网址看起来像下面这样,非常长,可能会超过一页。
这种类型的网址用requests.get方法是无法支持的。所以我想用requests.post方法来获取响应。请帮忙。
1 个回答
9
requests
这个库其实对查询字符串的长度没有严格限制,但你的服务器可能会有限制。而且,有些浏览器对网址的长度也有个大约2000个字符的限制。
如果你想用 requests
发一个 POST 请求,发送相同的数据其实很简单;只需要把字段放在一个字典里,然后传给 data
这个参数,接着用 requests.post()
函数就可以了:
url = 'http://example.com:8080/testAPI/testAPIServlet'
params = {'id': '123|345.....................................|789',
'rows': 200}
response = requests.post(url, data=params)
这个和 GET
请求的做法很像,只不过在 GET
请求中你会用到 params
这个参数。