Shi*_*dla 9 python urllib urllib2
我在python中使用urllib2和urllib库
假设我有以下代码
import urllib2
import urllib
url = 'http://ah.example.com'
half_url = u'/servlet/av/jd?ai=782&ji=2624743&sn=I'
req = urllib2.Request(url, half_url.encode('utf-8'))
response = urllib2.urlopen(req)
print response
Run Code Online (Sandbox Code Playgroud)
当我运行上面的代码时,我收到以下错误
Traceback (most recent call last):
File "example.py", line 39, in <module>
response = urllib2.urlopen(req)
File "/usr/lib64/python2.7/urllib2.py", line 126, in urlopen
return _opener.open(url, data, timeout)
File "/usr/lib64/python2.7/urllib2.py", line 398, in open
response = meth(req, response)
File "/usr/lib64/python2.7/urllib2.py", line 511, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/lib64/python2.7/urllib2.py", line 436, in error
return self._call_chain(*args)
File "/usr/lib64/python2.7/urllib2.py", line 370, in _call_chain
result = func(*args)
File "/usr/lib64/python2.7/urllib2.py", line 519, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 405: Method Not Allowed
Run Code Online (Sandbox Code Playgroud)
任何人都可以让我知道这里发生了什么,为什么它不起作用
提前致谢............
Mar*_*ers 15
您正在呼叫的服务器告诉您,您尝试呼叫的URL不允许使用POST方法.
通过传入URL的路径部分作为Request对象数据参数,您将使其成为POST而不是GET.
我怀疑你想发送一个GET请求:
req = urllib2.Request(url + half_url.encode('utf-8'))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
32425 次 |
| 最近记录: |