Форум сайта python.su
Продолжаю изучать пайтон
Собственно вопрос пока больше теоретический:
На входе есть произвольный url адрес.
На выходе получить информацию о том рабочая ли страница или нет.
Естественно можно проверить состояние сайта - по коду ответа, но если был просрочен хостинг, например, или заблокирован, страница перенесена, ошибка 404.
На разных сайтах будут выдаваться совершенно различные варианты.
Алгоритм:
1) проверка на возвращаемый код
2) Если 200, то проверка на наличие ошибок
Есть такое подозрение, что для решения задачи нужно использовать что-то в виде нейронных сетей.
Ну или есть разработки аналогичные?
Офлайн
neitro
с каких пор что бы проверить код http-ответа нужны нейронные сети?
Офлайн
neitro
и 200 подразумевает отсутствие ошибок
Офлайн
neitro
Нейронные сети? Мать моя женщина…
Обязательно нейросети, ГА и нечеткая логика. Причем все сразу
А реально sander правильно написал. Код ответа 200 подразумевает, что все (во всяком случае на сервере) прошло успешно. И если результат не ожидаемый, значит что-то в функции-отображении на сервере у Вас не так, хотя она и выполнилась без ошибок
Отредактировано 4kpt_III (Авг. 10, 2015 14:39:43)
Офлайн
Видимо я не совсем корректно уточнил.
Ответ 200 - не означает, что сайт работает - это может быть ответ хостинга.
Т.е. да сайт работает - только сайта на нем нет.
Задача подразумевает отлов ситуаций
1) был просрочен хостинг
2) сайт заблокирован хостингом
3) страница перенесена
4) ошибка 404
5) Парковочная страница
Поэтому уточню алгоритм:
1) Проверка кода (должен вернуть 200)
2) Если ответ 200 - это еще не значит, что сраница - это страница сайта, а не парковочная, 404 и т.д.
Т.е. пример из практики: домен не успели продлить - вместо сайта висит заглушка. Выдает ответ сервера 200. Но сайта там нет.
Вариант 2-й страницы нет на этом сайте - выдает ошибку 404.
Собственно вопрос, как эти ошибки отлавливать?
Офлайн
neitro
Вариант 2-й страницы нет на этом сайте - выдает ошибку 404.
>>> requests.get("http://google.com/dsj") <Response [404]>
Офлайн
Задача подразумевает отлов ситуацийнереально
1) был просрочен хостинг
2) сайт заблокирован хостингом
3) страница перенесена
4) ошибка 404
5) Парковочная страница
Офлайн
FishHook
Да накой здесь ангуляр. Можно с использованием обычного js это сделать… Идея в том, что эта задача изначально обречена на провал. Да и смысла в ней ноль.
Офлайн
В сервисах контроля доступности сайта обычно используют поиск характерного для страницы текста. Если найден - считается, что страница отдана верно.
Офлайн
PooHВот и я о том же подумал. Просто у различных хостингов эта информация отличается. Вот и вопрос как это сделать грамотнее - искать по куску кода. Ну не красиво же будет)
обычно используют поиск характерного для страницы текста
Офлайн