我正在使用以下网址进行request.get调用:

https://api.datasource.com/apps/ios/ranking?countries=NL&categories=Overall > Kids > 5 & Under&device=ios&ranks=1000


我收到"categories" has an illegal value "Overall的错误消息,这是由于“总体>儿童> 5岁及以下”中的&号引起的

逃脱此角色的最佳方法是什么?

最佳答案

而不是直接在URL中传递查询参数,而是在字典requests中使用params lets you pass them来处理URL编码。 (在这种情况下,您需要对“&”号进行转义。)

In [15]: params = dict(countries='NL', categories='Overall > Kids > 5 & Under', device='ios', ranks=1000)

In [16]: requests.get("http://www.example.com", params=params)
Out[16]: <Response [200]>

10-06 13:54
查看更多