Posted on 27-08-2008
Filed Under (技术) by waterlin

最近在公司里要对一些固定模式的网页进行处理,我要从定位好的位置开始,去掉html代码从而提取出文字内容。于是写了一个Perl函数来干这个活,中心思想是用正则表达式替换掉html里面的tag。

sub delHtml{
my $str = shift;
$str =~ s/<(style|script|iframe|object|embed)(?=\s|>).+?<\/\1>//igs;
$str =~ s/on(click|mouseover|mousedown|load)=”.+?”//igs;
$str =~ s/on(click|mouseover|mousedown|load)=.+?\s+?//igs;
$str =~ s/ //igs;
$str =~ s/<[^>]+?>//gs;
return $str;
}

© 2008, 浏忙大爆炸. All rights reserved.
除非注明,浏忙大爆炸文章均为原创,转载请以链接形式标明本文地址。

(1) Comment    (1,416) Views    Read More   

Comments

[…] 我在写我的程序的时候,还用了delHtml函数来对读取出来的内容进行了进一步的格式化,把里面多余的html代码去掉了。如里需要程序自动判断网页是否从特定时间开始有无更新,则需要用上LWP::UserAgent的if-modified-since了。 整个 Yo2 上的相关文章:假如GFW有2.0计划…… Web2.0小盘点(3)——掘客类(综合篇) RSS Feed 的应用以及周边 RSS的一些应用周边 Web2.0 Tools printYo2FavControl(“”,””,”用Perl来自动抓取及存档目标网页”,”最近因为工作需要,一直要监视几个网页,如果有更新,就要对它们进行一些处理。每天不停地刷网页,太无聊太痛苦了,于是用Perl写了一个自动监视网页并提取相关信息的东西。 首先,要装上LWP::UserAgent和HTML::Manipulator这两个Perl模块。整体思路是用LWP::UserAgent模块读取特定网页下来,然后再用HTML::Manipulator来对保存下来的html进行操作,分离出你想要的部分。 1) 用LWP::UserAgent来操作网页十分简单,基本上以下几个步骤就搞定”);最近阅读过此文章的网友:     Read More    Post a Comment […]


Post a Comment
Name:
Email:
Website:
Comments: