HTML::TreeBuilderでHTMLの解析をするモダンなPerlスクリプト

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# utf8
# インスパイヤ:[Perl]簡単!たった13行のコードでHTML取得&解析をする - DQNEO起業日記 <http://dqn.sakusakutto.jp/2010/06/perlhtml.html>
use 5.8.1;
use strict;
use warnings;
use utf8;
use Term::Encoding qw(term_encoding);
my $encoding = term_encoding;
binmode STDOUT => ":encoding($encoding)";
use LWP::UserAgent;
use HTML::TreeBuilder;
# urlを指定する
my $url = 'http://yahoo.jp';
# IE8のフリをする
my $user_agent = "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)";
# LWPを使ってサイトにアクセスし、HTMLの内容を取得する
my $ua = LWP::UserAgent->new(agent => $user_agent);
my $res = $ua->get($url);
my $content = $res->decoded_content;
# HTML::TreeBuilderで解析する
my $tree = HTML::TreeBuilder->new;
$tree->parse($content);
# DOM操作してトピックの部分だけ抜き出す。
# <div id='topicsfb'><ul><li>....の部分を抽出する
my @items =  $tree->look_down('id', 'topicsfb')->find('li');
print $_->as_text."\n" for @items;
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
菅新首相の支持率62.4% NNN写真
エース級種牛、生き残り容認へ写真
回転ずし店に車 14人が重軽傷写真
茨城・上海チャーター便就航へ写真
「イカロス」帆の展開8日以降に写真
他チーム故障 ブラジルは複雑写真
全仏男子 ナダル5度目の優勝NEW
古瀬アナが絵本作家デビュー写真
昨日の話題(42件)
一覧

Comments

comments powered by Disqus