武器商人@ダーツのブログ

ダーツ界の武器商人です(です)。当ブログの内容については、リンク・引用・拡散ご自由にどうぞ。許可不要です。丸コピだけは勘弁してくださいねw

PERFECT選手名鑑をPythonでWebスクレイピング

PERFECTの選手名鑑は激熱な場合がある。

更新されるルールについては未だにわかっていないので、Webスクレピングして毎日クローリングでもしようかなと思っております。


以下にWebスクレイピングのアプローチを簡単に書きます。

まずは、該当のURLのソースを見てみましょうか。

URLはここ。
http://member.prodarts.jp/players/

ソース見てみるとこんな感じ。
f:id:oneshotlife_tom:20180429182930p:plain

何となく、、、インデントのずれ具合を見る限り、手作業でメンテナンスしているんじゃないかなぁ???と思ったり。

「box1b」っていうクラスを目印に探していけばいいかな???しかしまぁ、素敵なネーミング(笑)

Google Chromeの検証機能を使えばxpathが取得出来ます。
要素を辿って行って欲しいテキストを右クリックして「Copy XPath」を選択するだけ。
f:id:oneshotlife_tom:20180429192202p:plain

僕は、Pythonっていうプログラミング言語を好きで使っています。

Scrapy使えば数行で取れます。

>>>scrapy shell
>>>fetch('http://member.prodarts.jp/players/')
>>>response.xpath('//*[@id="mainbox"]/div[3]/div/p/text()').extract()

In [1]: fetch('http://member.prodarts.jp/players/')
In [2]: response.xpath('//*[@id="mainbox"]/div[3]/div/p/text()').extract()
Out[2]: ['城野  弘樹', '山田 勇樹', '畑野 千春 ', '知野 真澄', '本野 千秋 ']

これで取れた。

あとは、これを毎日走らせるだけ。

PICK UP PLAYERSが更新されたら、gmailに通知来るようにしようかな。