表单提交后重定向使用WWW :: Mechanize(perl)给出404错误

时间:2013-03-21 17:29:06

标签: perl parsing www-mechanize

我正在尝试使用perl中的Mechanize在this site中获取特定电视节目的下一集的日期。

# getting episode number & date

# create a new browser
use WWW::Mechanize;
my $browser = WWW::Mechanize->new(autocheck => 0);

# fill search form, getting to tv show page
my $url= "http://next-episode.net/";
$browser->get($url);
$browser->form_name("search");
$browser->field("search", "big bang");
$browser->click();

print $browser->content();

我无法访问电视节目网页。我只收到了404页面:“抱歉,找不到您正在寻找的页面!您可能输入了错误的网址,或者可能链接不当或移动了。”

我是否错误填写表格?

1 个答案:

答案 0 :(得分:1)

这个怎么样? :

my $url = "http://next-episode.net";
my $search = "big bang";

use WWW::Mechanize;
use URI::Escape;
my $browser = WWW::Mechanize->new(autocheck => 1);

my $string = uri_escape $search;
$browser->get("$url/site-search-$string.html");

print $browser->content();

如果您想知道等待的剩余天数,请添加额外的行:

print "$1 days to wait\n" if $browser->content() =~ /(\d+)\s+Day\(s\)\s+/;

(我在这里使用正则表达式因为HTML这里是奇数)