pythonget⽅法列表参数_python中requests库get⽅法带参数请
求
data={
'cid':567464,
'page':1,
'key':'',
'language':1,
在线url网址编码解码'gtk':6,
'_cid':567464,
'_mid':34949,
'_dt':'2019-05-03 13:03:08',
'_sign':'e74c8c52618a64a454dd7f12aff3cc1c'
}
def getFun(url,data):
(url,params=data)
print(ret.url)
return ret
有两个坑。
⼀是使⽤get⽅法带参数请求时,是params=参数字典,⽽不是data=。data=是post⽅法的参数。
⼆是对参数的编码,对于上⾯的参数需要编码的就是_dt,这个是时间的参数需要编码,编码的是空格和冒号。我之前在浏览器上看的url是编码好的,我就预先编码好数据放到data⾥了,然⽽并不需要这样,只要把原始数据放进去,他就会⾃动编码。放⼊预先⾃⼰编码的数据反⽽会出错。这⾥我还发现了⼀点,在url编码时,有些编码是把空格编码为+,有些则是编码为%20,这⼀点我还没弄明⽩为什么。放⼊参数的数据是把空格编码为+了,我所访问的⽹址也正是需要这样的编码。
可以直接⽤ret.url来返回所请求的url,这样就可以与浏览器直接访问的结果对⽐。在到这个函数之前⼀直是不停改参数看response来判断是不是对,然⽽到最后还是没改好,还是通过看这个ret.url才知道是编码的问题。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论