perl 處理HTML

gaorongchao1990626發表於2013-05-12

perlhtml

1 perl程式碼中的web處理

1.1 常用模組

Mojo::UserAgent WWW::Mechanize anyevent::http LWP

1.2 基本過程

扒站最基本的:經過一個網頁,把頁面上的連結都解析出來放到一個陣列裡,把頁面 上的表單解析出來放到一個雜湊裡,並且hidden欄位自動填好,你只需填剩下的欄位。 下面,把我用到的最基本的東西總結在下面:

1.3 獲取並解析網頁

使用LWP::Simple模組的get方法下載網頁

然後使用HTML::FormatText建立新的格式器

格式器只能處理已解析的HTML,所以我們使用HTML::TreeBuilder解析HTML

已經解析的HTML位於$treebuilder物件中,所以在這個物件上使formatter 物件的format方法,把網頁的格式設定為普通文字,並輸出。

 1:  use LWP::Simple;
 2:  use HTML::Treebuilder;
 3:  use HTML::FormatText;
 4:  
 5:  $html = get("http://www.cpan.org/");  
 6:  $formatter = HTML::FormatText->new;
 7:  $tree_builder =HTML::TreeBuilder->new;
 8:  $tree_builder->parse($html);
 9:  $text = $formatter->format($tree_builder);
10:  print $text;

上面的方法是perl技術內幕中提到的方法。

Date: 2013-05-12 16:44:00 CST

Author: gaorongchao

Org version 7.8.11 with Emacs version 24

Validate XHTML 1.0

相關文章