admin 管理员组文章数量: 1184232
昨天一个python方法中用了urllib模块,后来用requests模块重新实现了功能,但出现值为None的键无法添加到url中的情况。
#urllib模块
def process(self,q):
url = ""
url = "%s%s" %(url, urllib.urlencode({<strong>"text": q.get('text'</strong>)}))
return json.loads(urllib.urlopen(url).read())
#requests模块
def process(self,q):
url = ""
payload = {<strong>"text":q.get('text')</strong>}
r = requests.get(url,params=payload)
result = r.json()
return result
后来,在requests的文档中找到了原因:
在requests中,字典值为None的键不会被添加到查询字符串中。而直接拼接生成url的urllib模块则不会出现这样的问题。
我想,这样可能会造成一些问题。例如:某些值为None的参数其实是可以返回结果的。比如
其实是可以查询到结果的。
如何解决这个问题还需要想想
版权声明:本文标题:requests模块,参数值为None的键无法添加到URL中_request.init 无法设置url 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1773851334a3566446.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论