ScrapyはPython製のオープンソース・ソフトウェア。Webサービスから必要な情報を抜き出したり、自動操作をしたりと未だに利用されているのがスクレイピングと呼ばれる技術だ。求人、不動産、Eコマース…様々なサイトの情報を機械的に収集し、データベースに蓄積している。

ピクチャ 114.png

Pythonで外部サイトからデータを収集する際に

 

RubyでWebシステムを開発している場合、HpricotやNokogiriを使っていたが、Pythonによる開発の場合はどうしたら良いだろう。そこで使えるのがScrapyだ。ScrapyはPythonで開発されたスクレイピングとクローリング用フレームワークだ。

ScrapyではWebサイトにアクセスしてデータを取得し、そのデータからXPathを使ってコンテンツにアクセスできる。オブジェクト指向に従って、柔軟に操作ができるのが便利だ。スクレイピングしたデータを使ってWebサイトを構築する際に役立つことだろう。

ピクチャ 115.png

XPathを使って情報を取り出す

 

もう一つの利点はクローリングのフレームワークも兼ね備えていることだ。ドメインを指定して、クローリングする深さも設定することができる。Webサイトを自動巡回してデータ収集するようなモデルも簡単に組み上げることができるだろう。

Webサイトを巡回する際にもネットワーク上の問題や工夫が必要だ。そうしたノウハウがScrapyには詰まっている。Pythonを使ってWebサイトのデータを収集するサイトを構築する際にはぜひとも使いたいライブラリだ。

 

Scrapy

 http://scrapy.org/