Scrapyのインストール
http://doc.scrapy.org/en/0.20/intro/install.htmlを参考にインストールする。
pip install scrapyでインストールする場合lxmlのインストールに失敗する場合は、バイナリーパッケージをインストールした後、pip install scrapy -Iでインストールする。
Ubuntuの場合はhttp://doc.scrapy.org/en/0.20/topics/ubuntu.html#topics-ubuntuを参考にインストールしてもいい。
プロジェクトの作成
チュートリアルを参考にプロジェクトを作成する。
プロジェクトの雛形を作成
scrapy startproject hatena
でプロジェクトの雛形を作成する。
items.pyの更新
hatena/items.pyのHatenaItemクラスを更新して出力するデータ構造を定義する。
今回はtitle,description,user,dateの4つのデータを定義する。
hatena.pyの作成
hatena/hatena/hatena.pyを作成し、ダウンロードするサイトとHTMLからHatenaItemにデータを格納するコードを書く。
今回はテクノロジーのホットエントリーを取得するのでstart_urlsに'http://b.hatena.ne.jp/hotentry/it'を指定する。
今回はテクノロジーのホットエントリーを取得するのでstart_urlsに'http://b.hatena.ne.jp/hotentry/it'を指定する。
HatenaItemにデータを格納
XPathItemLoaderを使用してHatenaItemにデータを格納するため
XPathItemLoderのコンストラクトにitemとselectorを指定する。
selectorだけでなくresponseを指定することもできる。
add_xpathメソッドの引数にHatenaItemのフィールド名とXPathを指定しデータを取得する。XPathで取得したデータが第1引数で指定したアイテムのフィールドに格納される。
load_itemメソッドでItemLoaderからItemを取得する。
プロジェクトを実行する
scrapy crawl hatena
でプロジェクトを実行してスクレイピングを行う。
0 件のコメント:
コメントを投稿