タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

scraperに関するnakaha-tのブックマーク (2)

  • Web::Scraperでhtmlのcontent-typeを一発で抜き出す方法 | hirobanex.net

    近年、Webデータを使ったデータマイニングが活況を呈していますので、WebのスクレーピングをしてDBにためておきたいというニーズが少なからずあると思います。 Perl環境であれば、スクレーピングしたHTMLDBに貯める前にutf8に変換しておきたいので、HTMLから文字コードを取り出したいと思います。そんなときに試行錯誤して調べた、PerlのWeb::Scraperを使った文字コードを抜き出す方法紹介します。なお、この記事はhachioji.pmにおける発表に基づいています。 不完全な方法 Web::Scraperを使って、簡単に一発で抜き出すには、パっと思いつくのは以下のような方法です。 use strict; use warnings; use Web::Scraper; use Test::More; my $html = '<meta HTTP-EQUIV="content-ty

  • Web::Scraperで正規表現を使って必要なリンクだけを取得する方法 - 日曜プログラマのそゞろ事

    わかってしまえば単純なことでした。 process 'a[href=~/\.jpe?g$/]', 'urls[]' => '@href'; XPathでも同じようにできます。 process '//a[@href =~ /\.jpe?g$/]', 'urls[]' => '@href'; Web::Scraperにはフィルタの概念があって、取得してからごにょごにょできるので、そっちのほうばかり調べていました。 例えば以下のようなHTMLの場合、そのまま取得すると、前後に改行が入ってしまいます。 <title> タイトルなのだ </title> で、それを取得する時に、前後の改行を削除してやることができます。 process 'title', 'title' => ['TEXT', sub { s/^\s+//o; s/\s+$//o; } ]; こういう機能をフィルタと呼んでいます。 その

  • 1