urllib.urlretrieve
возвращает молча, даже если файл не существует на удаленном http-сервере, он просто сохраняет html-страницу в указанном файле. Например:Как узнать, успешно ли urllib.urlretrieve?
urllib.urlretrieve('http://google.com/abc.jpg', 'abc.jpg')
просто возвращает молча, даже если abc.jpg не существует на сервере google.com, сгенерированный abc.jpg
не является допустимым файлом JPG, это на самом деле HTML-страницы. Я думаю, что возвращенные заголовки (экземпляр httplib.HTTPMessage) могут использоваться для фактического определения того, успешен ли поиск или нет, но я не могу найти какой-либо документ для httplib.HTTPMessage
.
Может ли кто-нибудь предоставить некоторую информацию об этой проблеме?
Может ли urllib2 обеспечить кэширование поведения urlretrieve? Или нам нужно переопределить его? – Kiv
Просмотреть этот бесплатный рецепт из ActiveState: http://code.activestate.com/recipes/491261/ Мы используем его в нашем текущем проекте, работает безупречно –
urlopen не предоставляет функцию hook (чтобы показать индикатор выполнения для пример), как urlretrieve. –