Форум программистов, компьютерный форум, киберфорум
Наши страницы
Perl: разработка для Web
Войти
Регистрация
Восстановить пароль
 
commetaR47
0 / 0 / 0
Регистрация: 10.02.2013
Сообщений: 20
#1

Узнать время ответа сервера у LWP запроса - Perl

07.02.2018, 17:24. Просмотров 137. Ответов 0
Метки нет (Все метки)

Есть парсер XML, по сути это ревалидатор кэша сайта. Парсит sitemap XML.

Делаю замер
Perl
1
2
3
4
my $begin = times();
...Запрос страницы
my $end = times();
print $end-$begin;
Только получаю совсем не реальные цифры ~0.03мс, хотя многие запросы гораздо медленнее. Что я делаю не так?

Полный код
Perl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#!/usr/bin/perl -w
use strict;
use XML::LibXML;
use LWP 5.64;
 
my @sitemaps=(
    'https://seo-marketing.spb.ru/sitemap.xml'
);
 
sub parse_sitemap {
    my $sitemap = shift;
    
    my $browser = LWP::UserAgent->new;
    my $response = $browser->get($sitemap);
    my $sitemap_content= $response->content;
    
    my $parser = XML::LibXML->new;
    my $doc = XML::LibXML->load_xml( string=>$sitemap_content );
    my $root = $doc->documentElement();
    
    my @nodeList = $doc->getElementsByTagName('loc');
    foreach my $loc (@nodeList) {
        my $url = $loc->textContent;
        my $ext = substr($url,-3);
        
        if($ext eq "xml"){
            print "xml \n";
            parse_sitemap ($url);
            next;
        }
        my $begin = times();
        my $browser = LWP::UserAgent->new;
        my $response = $browser->get($url);
        die "Error at $url\n ", $response->status_line, "\n Aborting" unless $response->is_success;
        my $end = times();
        print $end-$begin, " ",$response->status_line," ",$url,"\n";
        #sleep(10);
    }
    
}
 
foreach my $sitemap (@sitemaps) {
    parse_sitemap ($sitemap);
}

http://www.cyberforum.ru/perl/thread489438.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2018, 17:24
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Узнать время ответа сервера у LWP запроса (Perl):

Таймаут lwp
Я получаю страницу через LWP, как сделать что бы если получение страницы длится...

LWP + https + authorization_basic
Коллеги, целый день парюсь, не могу понять где ошибка. Задача: На закрытом...

LWP::UserAgent недокачивает до конца
Отправляю через LWP::UserAgent запрос на скачивание странички, но...

Timeout при использовании LWP
Здравствуйте! Прошу помощи, пишу скрипт интеграции с ip телефонией, встал...

Не получается получить HTML код LWP::useragentом
Здравствуйте,пытаюсь разобраться с LWP::UserAgent но не могу даже элементрано...

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.02.2018, 17:24
Привет! Вот еще темы с решениями:

ajax в json не работает, если срабатывает LWP::UserAgent
есть код: ...

Как узнать размер файла во время загрузки
Скрипт загрузки написанный на CGI.pm сначала создает временный файл, а потом...

Как узнать часовой пояс или время на компе пользователя ?
Требуется решение в части определения, какой часовой пояс (+ или - по отношению...

LWP proxy ошибка Error: 407 Proxy authentication required
Есть скрипт: #!/usr/bin/perl use LWP::UserAgent; $ua =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru