Как мне настроить WWW :: Mechanize для работы за прокси и https? - PullRequest
0 голосов
/ 14 сентября 2010

Я написал Perl-код, используя WWW :: Mechanize для получения веб-страницы.Когда я получаю http веб-страницы, он работает нормально, но не работает для https.Я проверил, и у меня есть пакет Crypt :: SSLeay.Что еще может быть не так?

Сообщение об ошибке ..

Error GETing https://www.temp.com: Can't Connect to www.temp.com:443 <Bad hostname 'www.temp.com'> at scrape.pl line 8

Ответы [ 3 ]

2 голосов
/ 14 сентября 2010

Я видел в ваш связанный вопрос по механизации , который вы вызываете proxy метод только с схемами http и ftp. Попробуйте еще раз с https в комплекте.

Вероятно, более полезно установить переменные окружения прокси , поскольку тогда все программы могут использовать эту центральную конфигурацию вместо того, чтобы настраивать прокси для каждой программы отдельно. Не забудьте https_proxy. Вызовите env_proxy метод вместо proxy, чтобы использовать их.

1 голос
/ 14 сентября 2010

Очевидно, мне нужно было добавить следующее в мой файл

$ENV{'HTTPS_PROXY'} = 'http://proxy:port/';

для Crypt :: SSLeay

0 голосов
/ 03 июня 2014

В случае, если кто-то спотыкается об этом старом вопросе: ситуация изменилась за последние годы.

  • начиная с версии 6 LWP использует IO :: Socket :: SSL в качестве бэкэнда
  • IO :: Socket :: SSL не предоставляет свои собственные прокси-хаки, как Crypt :: SSLeay и поддержка прокси LWP https, как описано (например, с использованием метода proxy или env_proxy), была нарушена.
  • с версией 6.06и LWP :: UserAgent, и LWP :: Protocol :: https (которые теперь являются раздельными дистрибутивами!). Прокси-сервер https работает должным образом и задокументирован
  • для более старых версий LWP можно использовать Net :: SSLGlue :: LWP
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...