![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| DooZ |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 206 Регистрация: 25.11.2005 Репутация: нет Всего: 1 |
суть в следующем
у меня есть 1000 ссылок которые надо проверить на какие-то данные (какие щас это не важно) все это дело надо проверить через прокси! вопрос как отделить ошибку самого сайта от ошибки прокси? т.е. если не пашет прокся одно дело если не пашет сайт другое (проверять сайт по каким то параметрам типа текст какой-то, не подходит т.к. все сайты совершенно разные) просто если работаешь через LWP он выдает допустим ошибку 404 или 500 и хер его знает чья это ошибка прокси или сервака (страницы что я проверяю) как быть? может есть вариант в Socet, IO::Socket ? желательно примеры заранее благодарю |
|||
|
||||
| Aleksandor |
|
|||
|
Практик ![]() ![]() Профиль Группа: Участник Сообщений: 272 Регистрация: 22.11.2005 Где: россия, зеленогра д Репутация: нет Всего: 12 |
Надо бы RFC посмотреть, но навскидку могу сказать что прокси не должен сам давать коды ответов HTTP. На то он и прокся что может лишь добавлять от себя некоторые заголовки, но не более того...
-------------------- Call out Gouranga be happy!!! Gouranga Gouranga Gouranga .... That which brings the highest happiness!! |
|||
|
||||
| Kiber_rat |
|
|||
![]() MACMANIAC ![]() ![]() Профиль Группа: Участник Сообщений: 276 Регистрация: 18.4.2002 Где: Ashdod, Israel Репутация: 7 Всего: 9 |
Вот тебе для справки коды ответов HTTP:
200 OK 201 Успешная команда POST 202 Запрос принят 203 Запрос GET или HEAD выполнен 204 Запрос выполнен но нет содержимого 300 Ресурс обнаружен в нескольких местах 301 Ресурс удален навсегда 302 Ресурс отсутствует временно 304 Ресурс был изменен 400 Плохой запрос от клиента 401 Неавторизованый запрос 402 Необходима оплата за ресурс 403 Доступ Запрещен 404 Ресурс не найден 405 Метод не применим для данного ресурса 406 Недопустимый тип ресурса 410 Ресурс Недоступен 500 Внутренняя ошибка сервера 501 Метод не выполнен 502 Неисправный шлюз либо перегруз сервера 503 Сервер недоступен/тайм-аут шлюза 504 Вторичный шлюз/тайм-аут сервера -------------------- Best regards! @..@_____Ku6ep =*=______\______KPbIC
|
|||
|
||||
| sharq |
|
|||
![]() Perl Liker ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 13.12.2004 Где: Ростов-на-Дону Репутация: 23 Всего: 28 |
DooZ
Ответ можно получить с помощью метода status_line, в котором будет указан код ошибки и краткое пояснение ошибки, в том числе ошибка прокси (например, 500 Invalid argument proxy). perldoc LWP::UserAgent perldoc HTTP::Request perldoc HTTP::Response -------------------- [color=gray]There's More Than One Way To Do It[/color] |
|||
|
||||
| DooZ |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 206 Регистрация: 25.11.2005 Репутация: нет Всего: 1 |
вообщем стандартными методами не обойтись как выяснилось
в том числе разбором ответов вариант походу один (посоветовали добрые люди) проверять мелкую страницу на наличие строки например (100% существующую страницу) перед каждым коннектом... =) |
|||
|
||||
| sharq |
|
||||||
![]() Perl Liker ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 13.12.2004 Где: Ростов-на-Дону Репутация: 23 Всего: 28 |
DooZ вот смотри:
Это функция получения страницы по указанному url, использующая список прокси. Если страница не получена, то указывается причина, т.е. статус - номер ошибки и короткое сообщение. Вот лог работы скрипта:
Как видишь, это все ошибки прокси, которых отверг url. В данном случае не было ошибок сайта, т.к. url - валидный. Но status_line показывает все ошибки, возникшие при получение страницы, например,
-------------------- [color=gray]There's More Than One Way To Do It[/color] |
||||||
|
|||||||
| DooZ |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 206 Регистрация: 25.11.2005 Репутация: нет Всего: 1 |
ага проходили такое
бывают такие прокси которые пишут Your IP address is not recognized CoDeeN CDN Network типа того и никакой ошибки... но сайт (страница) не получается... делайте выводы |
|||
|
||||
| sharq |
|
|||
![]() Perl Liker ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 13.12.2004 Где: Ростов-на-Дону Репутация: 23 Всего: 28 |
DooZ
так это проблема прокси, а не кода. -------------------- [color=gray]There's More Than One Way To Do It[/color] |
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |