2013-03-07 2 views
-2

Я бегуМой LWP Скрипт не работает

#!/usr/bin/perl -w 
use strict; 
use LWP::Simple; 
+0

У вас есть завиток или wget, и они работают? Если они не работают, perl не будет работать ... у вас нет доступа в Интернет. – runrig

+0

@runrig Я так думаю. Как я могу проверить, что ли? – mtrmilk

ответ

0

переменная $site имеет html код.

Также вы можете использовать функцию getstore для сохранения данных html в файл, например:

my $http_code = getstore('http://www.google.com/', 'google.html'); 
+0

Но как я могу заставить функцию get() работать? В моем исходном коде нет ошибки? Может быть, что-то не так с моей конфигурацией? – mtrmilk

+0

@mtrmilk: Ваш код кажется правильным для меня. Какой результат вы ожидаете? – Birei

+0

Упс! Я сделал ошибку по моему вопросу. Он фактически возвращает «Не удалось получить его!» В строке 6. Возможно, что-то случилось с моей ошибкой. Я запускаю это на проигрывателе VMWare с помощью CentOS. – mtrmilk

0

Это поможет вам много, если вы могли видеть причину сбоя. Я предлагаю вам использовать ядро ​​LWP вместо простой версии. Например:

#!/usr/bin/perl 

use strict; 
use warnings; 

use LWP; 

my $ua = LWP::UserAgent->new; 

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

die 'Couldn't get it: ', $response->status_line unless $response->is_success; 

my $site = $response->decoded_content; 
print 'Got it.'; 
+0

Хорошо, так что ответ был: «Не удалось его получить: 500 Не удается подключиться к www.google.com/80 (соединение отклонено) в строке примера 12. Как вы думаете, в чем проблема? – mtrmilk

+0

Вы за прокси-сервер? Он делает то же самое с другими URL-адресами? – Borodin

+0

Да, это то, что я только что узнал! – mtrmilk

Смежные вопросы