Проверка, является ли ссылка битой или не использующий Python, не загружая веб-страницу

Для тех, кто знает wget, это имеет опцию --spider, то, которое позволяет проверять, является ли ссылка, повредилось или нет, на самом деле не загружая веб-страницу. Я хотел бы сделать то же самое в Python. Моя проблема состоит в том, что у меня есть список 100'000 ссылок, которые я хочу проверить, самое большее один раз в день, и по крайней мере один раз в неделю. В любом случае это будет генерировать большой ненужный трафик.

Насколько я понимаю от urllib2.urlopen() документация, это не загружает страницу, но только метаинформацию. Это корректно? Или есть ли некоторый другой способ сделать это хорошим способом?

С наилучшими пожеланиями,
Troels

6
задан SilentGhost 12 July 2010 в 15:20
поделиться

2 ответа

Для этого следует использовать HEAD Request , он запрашивает у веб-сервера заголовки без тела. См. Как отправить HTTP-запрос HEAD в Python 2?

9
ответ дан 16 December 2019 в 21:33
поделиться

Не уверен, как это сделать в python, но в общем случае вы можете проверить "Заголовок ответа" и проверить "Код состояния" на код 200. В этот момент вы можете остановить чтение страницы и продолжить по следующей ссылке, таким образом вам не придется загружать всю страницу, только "Заголовок ответа". Список Status Codes

-1
ответ дан 16 December 2019 в 21:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: