如何使用perl刮取ASP网站?
请告诉我哪个模块用于刮取一个完全用ASP开发的网站,并且它的所有内容都不是正确的HTML语法。开发网站时使用哪种语言无关紧要。您(客户机)从网站上得到的只是生成的HTML(在本例中是破坏的HTML) 您可以使用“LWP”库和“get”函数将网站内容读入变量。。。然后使用正则表达式对其进行分析 像这样:如何使用perl刮取ASP网站?,perl,asp-classic,web-crawler,Perl,Asp Classic,Web Crawler,请告诉我哪个模块用于刮取一个完全用ASP开发的网站,并且它的所有内容都不是正确的HTML语法。开发网站时使用哪种语言无关紧要。您(客户机)从网站上得到的只是生成的HTML(在本例中是破坏的HTML) 您可以使用“LWP”库和“get”函数将网站内容读入变量。。。然后使用正则表达式对其进行分析 像这样: use strict; use LWP::Simple; my $url = 'http://...'; my $content = get $url; if ($content =~ m/...
use strict;
use LWP::Simple;
my $url = 'http://...';
my $content = get $url;
if ($content =~ m/.../) {
...
}
使用哪种语言开发网站并不重要。您(客户机)从网站上得到的只是生成的HTML(在本例中是破坏的HTML) 您可以使用“LWP”库和“get”函数将网站内容读入变量。。。然后使用正则表达式对其进行分析 像这样:
use strict;
use LWP::Simple;
my $url = 'http://...';
my $content = get $url;
if ($content =~ m/.../) {
...
}
或者你可以用。它基于LWP
(其中LWP::Simple
是的一个非常简单的子集),并提供了许多方便的“类似浏览器”的行为。例如,典型的ASP生成的带有登录cookies的网站的会话管理由Mechanize自动处理
use strict; use warnings;
use WWW::Mechanize;
my $mech = WWW::Mechanize->new;
$mech->get( 'http:://www.example.org/login.asp' );
$mech->submit_form(
form_number => 3,
fields => {
username => 'test',
password => 'secret',
}
);
虽然这首先有利于测试,但它仍然有LWP继承的方法,您可以访问普通请求。因此,您也可以访问请求,同时仍然具有内置解析器访问表单和链接的能力
也考虑使用适当的HTML解析器,即使网站的输出不是非常新奇的。有几个这样的人可以处理它。这将比仅仅建立起来容易得多。一旦您需要返回,这些将变得很难维护,因为页面已经更改了某些内容
以下是有关此主题的相关问题列表:- 或者您可以使用。它基于
LWP
(其中LWP::Simple
是的一个非常简单的子集),并提供了许多方便的“类似浏览器”的行为。例如,典型的ASP生成的带有登录cookies的网站的会话管理由Mechanize自动处理
use strict; use warnings;
use WWW::Mechanize;
my $mech = WWW::Mechanize->new;
$mech->get( 'http:://www.example.org/login.asp' );
$mech->submit_form(
form_number => 3,
fields => {
username => 'test',
password => 'secret',
}
);
虽然这首先有利于测试,但它仍然有LWP继承的方法,您可以访问普通请求。因此,您也可以访问请求,同时仍然具有内置解析器访问表单和链接的能力
也考虑使用适当的HTML解析器,即使网站的输出不是非常新奇的。有几个这样的人可以处理它。这将比仅仅建立起来容易得多。一旦您需要返回,这些将变得很难维护,因为页面已经更改了某些内容
以下是有关此主题的相关问题列表: