htmlのスクレイピングをする

やりたいこと

webページのスクレイピング

これを全部pythonから実行したい。

解決方法

うまいことライブラリを組み合わせてスクレイピングをする

 htmlページの取得: urllib2ライブラリを使う。(wgetで代用してもおk)

 htmlの解析: lxml.htmlライブラリを使う

基本的には、この2つがあれば、スクレイピングはできる

lxml.htmlライブラリの基本的な使い方はここにまとめられている

スクレイピングをするときに、とっても便利なのが、xpath記法である

xpathを使えば、任意のノードまで簡単にたどりづくことができる

xpathの記法はこのページに簡単にまとめられている

スクレイピングの際に気をつけなければいけないのが、取得の時間間隔と、user-agentの偽装である

取得する時間間隔をきちんと設定しておかないと、相手方のサーバーに迷惑をかけることになってしまう。

user-agentをきちんと偽装しておかないと、サーバーのログにブラウザ名でない名前が記録されてしまう。

スクレイピングされることを嫌うサーバー運営者もいるので、ログからIPアドレスを特定されてしまい、アクセス遮断されてしまう。

user-agentの偽装はここにまとめられている