Я создал скрипт perl для использования HTML :: TableExtract для очистки данных из таблиц на сайте.HTML :: TableExtract сайт HTTPS
Он отлично работает, чтобы выгрузить данные таблицы для незащищенных сайтов (например, сайт HTTP), но когда я пытаюсь использовать HTTPS-сайты, это не работает (строка tables_report просто печатает пустым .. она должна печатать кучу табличных данных).
Однако, если я беру содержимое этой страницы HTTPS и сохраняю его в html-файле, а затем отправляю его на незащищенный HTTP-сайт (и меняю контент, чтобы указать на эту страницу HTTP), этот скрипт работает так, как ожидалось ,
Кто-нибудь знает, как я могу заставить это работать через HTTPS?
#!/usr/bin/perl
use lib qw(..);
use HTML::TableExtract;
use LWP::Simple;
use Data::Dumper;
# DOESN'T work:
my $content = get("https://datatables.net/");
# DOES work:
# my $content = get("http://www.w3schools.com/html/html_tables.asp");
my $te = HTML::TableExtract->new();
$te->parse($content);
print $te->tables_report(show_content=>1);
print "\n";
print "End\n";
Упомянутые выше $ содержание сайтов только примеры .. это действительно не сайты я добывающие, но они работают так же, как сайт я действительно пытается царапать.
Один вариант, я думаю, для меня использовать perl, чтобы сначала загрузить страницу локально и извлечь из нее, но я бы предпочел, если есть более простой способ сделать это (кто поможет, пожалуйста, не тратьте любое безумное количество времени, приходящее со сложным решением!).
Спасибо за ответ! Это – ChrisS
Извините, я новичок в StackOverflow и слишком быстро вступаю в игру. Это почти сработало.Мне пришлось изменить одну часть на 'my $ ua = LWP :: UserAgent-> new ( ssl_opts => {verify_hostname => 0}, );' или я всегда получаю сообщение об ошибке подтверждения сертификата. Я объединил это решение с разбором Чейки. Я попытаюсь опубликовать свой последний код ниже. – ChrisS
На самом деле, после прочтения, кажется, что более рекомендуется использовать 'ssl_opts => {SSL_verify_mode => 'SSL_VERIFY_PEER'},', так вот что я сделал. Не уверен, есть ли вообще проблемы с безопасностью, но меня здесь не интересует безопасность, просто пытаясь вытащить некоторые статистические данные из публичного сайта. – ChrisS