Как выдернуть ссылку?

Тема в разделе "Perl программирование", создана пользователем mkth, 15 фев 2010.

  1. mkth

    mkth Гость

    Пусть при обращении перлом к сайту он отдает два урла (в теле страницы) вида src='http://site1.com' и src='http://site2.com'.
    Можно ли как-нибудь выдернуть ссылку src='http://site2.com' и перейти по ней, скажем, через 30 сек.,чтобы при парсинге не влететь в бан? Очень прошу помочь, заранее спасибо за помощь!
     
  2. Artem325

    Artem325 Гость

    Используйте регулярные выражения.
     
  3. mkth

    mkth Гость

    А можно кодом?

    Код (Text):
    #!/usr/bin/perl

    use LWP::UserAgent;

    my $ua = LWP::UserAgent->new;
    $ua->agent('Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)');
    $ua->default_header('Referer' => "http://mysite.ru");
    $ua->default_header('Accept' => "text/html");
    $ua->default_header('Accept-Charset' => "windows-1251,utf-8");

    my $response = $ua->get('http://site.com');

    if ($response->is_success) {
    print $response->decoded_content;
    }
    else {
    die $response->status_line;
    }
    Вот ответ сервера

    Код (Text):
    var fr=''; document.write("iframe='http://somesite.php' id='gfdtrtrtre'></iframe>");
    var fr=''; document.write("<iframe src='' id='gfdtrtrtre'></iframe>");
    setTimeout("document.getElementById('iframe').src='http://goodsite.ru/php?sid=64564563&sesslid=Gtr216846hgf11'", 30000);
    Как то так... Запрашивается страница, отдается скриптом два урла, первый полностью меняется, во втором-меняются только идентификаторы сессии, а сам домен не меняется...
     
Загрузка...

Поделиться этой страницей