Python クローリング/スクレイピング
代表的なPythonスクレピングライブラリ(サードパーティ)
ライブラリ | 特徴 |
lxml + cssselect | C言語ライブラリをバインディングしているので高速に処理できる。 |
Beautiful Soup | html用やxml用など用途にあわせてパーサーを切り替えられる。 |
pyquery | jQueryのインターフェースに近く、Webエンジニアには馴染みやすい。 |
クローリング
$ pip install requests #ライブラリのインストール
>>> import requests
>>> res = requests.get(“URL“)
>>> res.text #str型でボディ要素を取得できる
スクレピング(lxml + cssselect)
$ pip install lxml
$ pip install cssselect
>>> import lxml.html
>>> tree = lxml.html.parse(“file_name“) #htmlファイルをパース
>>> html = tree.getroot() #HtmlElementオブジェクトを取得
>>> html.cssselect(“cssセレクタ“) #cssセレクタに対応した要素を取得