urllib request.urlretrieve 错误 400
urllib request.urlretrieve error 400
我正在尝试从 url
下载图片
request.urlretrieve('https://website.com/image.jpg', "test.jpg")
以上有效。但是,当我尝试使用时:
a = 'https://website.com/image.jpg'
request.urlretrieve(a, "test.jpg")
它给我错误 400。如何在不导致错误的情况下将 URL 放入其中?
File "/usr/lib/python3.5/urllib/request.py", line 188, in urlretrieve
with contextlib.closing(urlopen(url, data)) as fp:
File "/usr/lib/python3.5/urllib/request.py", line 163, in urlopen
return opener.open(url, data, timeout)
File "/usr/lib/python3.5/urllib/request.py", line 472, in open
response = meth(req, response)
File "/usr/lib/python3.5/urllib/request.py", line 582, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/lib/python3.5/urllib/request.py", line 510, in error
return self._call_chain(*args)
File "/usr/lib/python3.5/urllib/request.py", line 444, in _call_chain
result = func(*args)
File "/usr/lib/python3.5/urllib/request.py", line 590, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 400: Bad Request
400 Bad Request 错误的一个常见原因是 URL 输入错误。尝试 print(a)
检查它是否确实包含您的想法。
以下几行对我有用 (python 3.5):
import urllib.request
# without variable
urllib.request.urlretrieve("https://www.google.fr/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png", "test.png")
# with variable
google_pic_url = "https://www.google.fr/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png"
urllib.request.urlretrieve(google_pic_url, "test2.png")
您也可以尝试使用另一个 URL,例如上面的那个,检查它是否特定于您的 URL(这可能与 DNS 问题或服务器问题有关)
我正在尝试从 url
下载图片request.urlretrieve('https://website.com/image.jpg', "test.jpg")
以上有效。但是,当我尝试使用时:
a = 'https://website.com/image.jpg'
request.urlretrieve(a, "test.jpg")
它给我错误 400。如何在不导致错误的情况下将 URL 放入其中?
File "/usr/lib/python3.5/urllib/request.py", line 188, in urlretrieve
with contextlib.closing(urlopen(url, data)) as fp:
File "/usr/lib/python3.5/urllib/request.py", line 163, in urlopen
return opener.open(url, data, timeout)
File "/usr/lib/python3.5/urllib/request.py", line 472, in open
response = meth(req, response)
File "/usr/lib/python3.5/urllib/request.py", line 582, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/lib/python3.5/urllib/request.py", line 510, in error
return self._call_chain(*args)
File "/usr/lib/python3.5/urllib/request.py", line 444, in _call_chain
result = func(*args)
File "/usr/lib/python3.5/urllib/request.py", line 590, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 400: Bad Request
400 Bad Request 错误的一个常见原因是 URL 输入错误。尝试 print(a)
检查它是否确实包含您的想法。
以下几行对我有用 (python 3.5):
import urllib.request
# without variable
urllib.request.urlretrieve("https://www.google.fr/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png", "test.png")
# with variable
google_pic_url = "https://www.google.fr/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png"
urllib.request.urlretrieve(google_pic_url, "test2.png")
您也可以尝试使用另一个 URL,例如上面的那个,检查它是否特定于您的 URL(这可能与 DNS 问题或服务器问题有关)