Проблема в том, что веб-сайт блокирует загрузку на основе сигнатуры браузера.Переименуйте ваш img.jpg
файл в page.html
и откройте в браузере, тогда вы увидите что-то вроде этого:
Ошибка 1010 Идентификатор луча: xxxxxxxxx • 2018-06-08 10:39:01UTC
Доступ запрещен
Что случилось?
Владелец этого сайта (asset.keepeek-cache.com) заблокировал вам доступ на основании подписи вашего браузера (xxxxxxxxxx).
Идентификатор луча Cloudflare: xxxxxxxxxx • Ваш IP: xx.xx.xx.xx • Производительность и безопасность Cloudflare
После того, как вы подумали, хотите ли вы, возможно, противоречить ИнтернетуПо желанию владельца сайта вы можете изменить своего пользовательского агента, выполнив (например)
import urllib
# Change user agent to look like Firefox
urllib.URLopener.version = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; it; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11'
# Download file with new user agent
urllib.urlretrieve(url, "img.jpg")
, что решило проблему для меня.