繁体   English   中英

WWW :: Mechanize从页面获取内容

[英]WWW::Mechanize get content from page

我已经使用WWW::Mechanize登录该站点。

现在,我们已经登录,我想使WWW::Mechanize脚本进入payments.php ,然后找到活动的用户订阅(例如VIP Access)(类: <p class="description"> )。

由此,我想阅读的内容是什么,然后选择正确的操作。 例如,如果用户包装状态为VIP Small然后打印PKG: VIP Small并且如果用户包装状态为VIP Full然后打印PKG: VIP Full

有人知道这样做的方法吗? 到目前为止使用的代码(在我的Ubuntu虚拟机中编码):

#!/usr/bin/perl

use WWW::Mechanize;

my $forum = "http://localhost/forums/forum.php";

print "Username\r\n";
my $username = <>;
chomp($username);

print "Password\r\n";
my $password = <>;

# do login
my $mech = WWW::Mechanize->new(agentcheck => 1, agent => 'Perl WWW::Mechanize');
$mech->get($forum);
$mech->submit_form(form_number => 1, fields => { vb_login_username => $username, vb_login_password = $password });

print "this far";
$mech->follow_link(text => "Click here if your browser does not automatically redirect you.");

我觉得你需要

$mech->get('http://localhost/forums/payments.php');

但我不能帮助您从那里获取信息,而无需查看页面的HTML。

您需要解析结果HTML文件。 我建议对以下任务使用HTML :: TreeBuilder :: XPath:

my $tree = HTML::TreeBuilder::XPath->new_from_content( $mech->content() );

my ($description) = $tree->findvalues('//p[ @class = "description" ]');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM