我正在用 Perl 开发一个网络爬虫。它从页面中提取内容,然后进行模式匹配以检查内容的语言。Unicode 值用于匹配内容。
有时提取的内容包含多种语言的文本。我在这里使用的模式匹配会打印所有文本,但我只想打印与模式中指定的 Unicode 值匹配的文本。
my $uu = LWP::UserAgent->new('Mozilla 1.3');
my $extractorr = HTML::ContentExtractor->new();
# create response object to get the url
my $responsee = $uu->get($url);
my $contentss = $responsee->decoded_content();
$range = "([\x{0C00}-\x{0C7F}]+)"; # match particular language
if ($contentss =~ m/$range/) {
$extractorr->extract($url, $contentss);
print "$url\n";
binmode(STDOUT, ":utf8");
print $extractorr->as_text;
}