Почему HTML, который я получаю с помощью Perl, отличается от того, что я вижу в браузере? - PullRequest
1 голос
/ 23 декабря 2011

Я пишу веб-скребок, используя Perl для извлечения данных из http://www.coupons.com/ Проблема в том, что HTML-код, который я получаю с помощью LWP :: UserAgent, отличается от того, что я вижу в веб-браузере.Меня интересует содержимое переменной JavaScript "CouponClubMember", и в HTML, которую я получаю с Perl, эта переменная пуста.

Есть идеи?

1 Ответ

4 голосов
/ 23 декабря 2011

Используя приведенный ниже код, я получаю то же самое, что и с моим браузером. Я просто установил agent на ту же строку, которую отправил мой Firefox, и включил обработку файлов cookie:

use LWP::UserAgent;

my $ua = LWP::UserAgent->new(
    agent      => 'Mozilla/5.0 (Windows NT 5.1; rv:7.0.1) Gecko/20100101 Firefox/7.0.1',
    cookie_jar => {},
);

$res = $ua->get("http://www.coupons.com");

if($res->content =~ /(CouponClubMember.{300})/) {
    print $1;
}
...