Python製オープンソースライブラリ「Scrapy」でスクレイピングしてみた話
Web上を自由に徘徊(クローリング)して,必要な情報抜き出してほしい情報を抽出(スクレイピング)してみたくなりました.
世の中にはいくらでもスクレイピングツールが出回っていますが,
プログラマブルなスクレイピングモジュールって少し敷居が高いと思って敬遠していました.
軽く足が突っ込めるようにPythonで,サクっとスクレイピングしてデータマイニング入門できるようなツールを探したところ,Scrapyと呼ばれるオープンソースのスクレイピングライブラリを見つけました,
https://github.com/scrapy/scrapy/
準備:
- scrapyのインストール
$ pip install scrapy
手順:
scrapyを使ってスクレイピングを行うにあたっては以下の3stepの作業になります.
1. scrapyプロジェクトの作成
$ scrapy startproject tutorial
# tutorial プロジェクトが出来ました.
# 生成物は以下のとおり
$ tree tutorial/
tutorial/
├── Books
├── Resources
├── items.json
├── scrapy.cfg
└── tutorial
├── __init__.py
├── __init__.pyc
├── items.py
├── items.pyc
├── items.py~
├── pipelines.py
├── settings.py
├── settings.pyc
└── spiders
├── __init__.py
├── __init__.pyc
└── __init__.py~
tutorial/tutorial/items.py を編集します
3. spiderと呼ばれるWeb上を徘徊するコードと情報の抽出ロジックを書く
tutorial/tutorial/spiders/__init__.py を以下のように編集します
実行
$ scrapy crawl dmoz -o items.json -t json
items.jsonにtitle, link, desc タグがjsonデータで取得されていれば問題なく使えています.
参考:
http://doc.scrapy.org/en/latest/intro/tutorial.html
コメント
コメントを投稿