[PerlChina] perl解析HTML处理成DOM对象的处理
Qiang ( James ) Li
shijialee at gmail.com
Sun Nov 25 17:10:00 PST 2007
看下面的回复....
rorot wrote:
> 谢谢Qiang的指点!
>
不客气 :)
> HTML::DOM, HTML::TreeBuilder我都测试过,在我看来,这些模块侧重于建立一个
> DOM模型,而不侧重解析一个HTML的(标准或者不标准的)文档。诸位看法?
>
> 在顺利安装完Mozilla::DOM后,着手编写脚本时,却始终无法找到此模块
> (Mozilla::DOM)的初始化程序,即New方法。于是进一步google, 才发现需要
> Mozilla::Mechanize来作init的工作。进而安装Mozilla::Mechanize, make test
> 成功率只有5%, 无法正常安装。于是转而求助于WWW::Mechanize. 终于发现,
> WWW::Mechanize才是最适合我需要的东西。其优势有二:
>
> 1, 成功解析HTML文档,能正确找到各种HTML Elements.
> 2, 不需要GTK支持。可以运行在Console模式。
>
> 但也有不足之处。至少WWW::Mechanize缺少了DOM里的Event支持。而Mozilla::DOM
> 则完美的支持DOM里的一切。
>
> 虽然Mozilla::Mechanize的运行,需要GTK2的支持,但是因为其对DOM的完美支
> 持,我还是倾向于最终使用此模块。但问题是,为什么我的Mozilla::Mechanize编
> 译都成功,而make test却无法通过? 尽管在configure的时候,并没有发现缺少
> 哪个模块。
>
什么错误提示?如果是纯 Perl 的模块,可以省掉 test, 不妨在安装前先 use 一
下,make 成功后 M::M 应该已经在你的编译的目录里了。
另外,你最终解决的是什么问题?提出来没准有其他的方法。
Qiang
> Qiang推荐的WEB::Scraper我等于会去看一下。谢谢你的回复!
>
> rorot
>
> 在07-11-25,*Qiang ( James ) Li* <shijialee at gmail.com
> <mailto:shijialee at gmail.com> > 写道:
>
> 我对这个不在行,但看到过不少关于此类的信息,给你发过来做参考吧,只是不知
> 是否有用。 :)
>
> HTML::DOM 底层用的是 HTML::TreeBuilder,或者你可以从 HTML::TreeBuilder
> 下手? HTML::TreeBuilder::XPath 和 HTML::DOMbo 看起来可能也会有用。
>
> 另外,我最近看到 Web::Scraper 的例子感觉有些相似,推荐你看看。
> http://search.cpan.org/perldoc?Web::Scraper 作者的 use.perl 里也提到 DOM
> ,有很多例子和 tutorials 下载。http://use.perl.org/journal.pl?op=
> display&uid=1653&start=10
>
> Qiang
>
>
> rorot wrote:
> > 诸位好,
> >
> > 我在使用Perl的HTML::DOM模块处理HTML文档时,出现了一些问题。
> >
> > 目的是通过Perl解析HTML文档,生成一个DOM对象。但在这个过程
> 中,适合
> > HTML::DOM模块时,发现,此模块parse了html文档后,生成的DOM对
> 象,丢弃了很
> > 多原来HTML文档里的元素。甚至可以说,除了body能处理正确外,其
> 他的Element
> > 都无法正确处理。
> >
> > 我想:或者是我的script编写问题(参考了HTML::DOM的POD写的脚
> 本), 或
> > 者是
> > 此模块(HTML::DOM)本身有问题,我看到它是alpha版本。
> >
> > 现在,我的问题是:如果需要在Perl下解析HTML文档生成DOM对
> 象,使用
> > HTML::DOM模块足够吗?或者还有其他更好的模块?Perl能类似于
> Mozilla那样,
> > 对于某些不符合w3c规范的HTML文档也能良好处理吗?
> >
> > PS: 经过CPAN搜索,我看到了Mozilla::DOM模块,尝试编译时,
> 发生错
> > 误,需
> > 要XPCOM支持,对XPCOM,几乎无印象,希望有懂得前辈指点一二。
> >
> > rorot
> >
> >
> >
> ------------------------------------------------------------------------
>
> >
> > _______________________________________________
> > China-pm mailing list
> > China-pm at pm.org <mailto:China-pm at pm.org>
> > http://mail.pm.org/mailman/listinfo/china-pm
> <http://mail.pm.org/mailman/listinfo/china-pm>
> _______________________________________________
> China-pm mailing list
> China-pm at pm.org <mailto:China-pm at pm.org>
> http://mail.pm.org/mailman/listinfo/china-pm
> <http://mail.pm.org/mailman/listinfo/china-pm>
>
>
More information about the China-pm
mailing list