Если вы часто извлекаете данные с веб-сайтов, вам, вероятно, следует подумать об автоматизации этого процесса. Этот процесс, который иногда называют «веб-скрапингом», является обычным для сайтов, которые не предоставляют формальный API или фид. Конечно, вы ничего не добьетесь, если сайт, который вы пытаетесь получить, недоступен.

Если у вас есть собственный сайт, вам, вероятно, приходилось сталкиваться с простоями раньше. Это может быть неприятно, заставляя вас терять посетителей и прерывая любую деятельность, за которую может отвечать ваш сайт. В таких обстоятельствах полезно иметь возможность легко проверить доступность вашего веб-сайта.

Python — отличный язык для написания сценариев, а его краткий, но удобочитаемый синтаксис делает реализацию средства проверки сайта простой задачей.

Создание вашего персонального средства проверки веб-сайта

Средство проверки веб-сайтов специально разработано для одновременной работы с несколькими веб-сайтами. Это позволяет вам легко переключать сайты, которые вам больше не нужны, или начать проверять сайты, которые вы запустите в будущем. Средство проверки — это идеальное «каркасное приложение», на основе которого вы могли бы развиваться дальше, но оно демонстрирует базовый подход к выборке веб-данных.

instagram viewer

Импорт библиотек в Python

Чтобы запустить проект, вы должны импортировать Запросы библиотека на Python с импорт функция.

импорт Запросы

Библиотека запросов полезна для связи с веб-сайтами. Вы можете использовать его для отправки HTTP-запросов и получения ответных данных.

Сохраните URL-адреса веб-сайтов в списке

После того, как вы импортируете библиотеку, вы должны определить и сохранить URL-адреса веб-сайтов в списке. Этот шаг позволяет вам сохранить несколько URL-адресов, которые вы можете проверить с помощью средства проверки веб-сайтов.

импорт Запросы

веб-сайт_url = [
" https://www.google.co.в",
" https://www.yahoo.com",
" https://www.amazon.co.в",
" https://www.pipsnacks.com/404",
" http://the-internet.herokuapp.com/status_codes/301",
" http://the-internet.herokuapp.com/status_codes/500"
]

Переменная ссылка на сайт хранит список URL-адресов. Внутри списка определите каждый URL-адрес, который вы хотите проверить, как отдельную строку. Вы можете использовать примеры URL-адресов в коде для тестирования или заменить их, чтобы сразу начать проверять свои собственные сайты.

Затем сохраните сообщения для общего Коды ответов HTTP. Вы можете хранить их в словаре и индексировать каждое сообщение по соответствующему коду состояния. Затем ваша программа может использовать эти сообщения вместо кодов состояния для лучшей читабельности.

статусы = {
200: "Веб-сайт доступен",
301: "Постоянная переадресация",
302: "Временное перенаправление",
404: "Не обнаружена",
500: "Внутренняя ошибка сервера",
503: "Сервис недоступен"
}

Создание цикла для проверки статуса веб-сайта

Чтобы проверить каждый URL по очереди, вам нужно цикл по списку веб-сайтов. Внутри цикла проверьте статус каждого сайта, отправив запрос через библиотеку запросов.

за URL в ссылка на сайт:
пытаться:
web_response = запросы.get (ссылка)
печать (url, статусы[web_response.status_code])

кроме:
печать (url, статусы[web_response.status_code])

Где:

  • для URL...перебирает список URL-адресов.
  • URL — это переменная, которой цикл for назначает каждый URL-адрес.
  • попробовать / кромеобрабатывает любые исключения что может возникнуть.
  • веб_ответ это переменная, которая предоставляет свойство с кодом состояния ответа

Весь фрагмент кода

Если вы предпочитаете просмотреть весь код за один раз, вот полный список кода для справки.

импорт Запросы

веб-сайт_url = [
" https://www.google.co.в",
" https://www.yahoo.com",
" https://www.amazon.co.в",
" https://www.pipsnacks.com/404",
" http://the-internet.herokuapp.com/status_codes/301",
" http://the-internet.herokuapp.com/status_codes/500"
]

статусы = {
200: "Веб-сайт доступен",
301: "Постоянная переадресация",
302: "Временное перенаправление",
404: "Не обнаружена",
500: "Внутренняя ошибка сервера",
503: "Сервис недоступен"
}

за URL в ссылка на сайт:
пытаться:
web_response = запросы.get (ссылка)
печать (url, статусы[web_response.status_code])

кроме:
печать (url, статусы[web_response.status_code])

А вот пример запуска кода:

Возможности кодирования Python в парсинге веб-страниц

Сторонние библиотеки Python идеально подходят для таких задач, как просмотр веб-страниц и получение данных через HTTP.

Вы можете отправлять автоматические запросы на веб-сайты для выполнения различных типов задач. Это может включать чтение заголовков новостей, загрузку изображений и автоматическую отправку электронных писем.