主要场景是这样的,我有一段 URL ,用于对百度贴吧进行签到
使用 HttpConnection 的代码如下:
conn = http.client.HTTPConnection('tieba.baidu.com', 80)
conn.request('GET', '/mo/q---{0}/sign?tbs={1}&fid={2}&kw={3}'.format(urllib.parse.quote(BAIDUID, 'utf-8'), tbs, fid, urllib.parse.quote(tieba, 'utf-8')))
resp = conn.getresponse()
使用 urlopen 的例子如下
url = 'http://tieba.baidu.com/mo/q---{0}/sign?tbs={1}&fid={2}&kw={3}'.format(urllib.parse.quote(BAIDUID, 'utf-8'), tbs, fid, urllib.parse.quote(tieba, 'utf-8'))
urllib.request.urlopen(url)
两个 URL 地址是完全一样的,然而使用 HttpConnection 的情况下,虽然返回的 code 是 200 ,同时 read 出来的也是正常打开贴吧的源代码,可是贴吧却没有签到成功, 可是使用 urlopen 这个方式却签到成功了。
请问下各位,这是什么原因导致的呢?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.