BeautifulSoupを使ってWEB上にあるデータをスクレイプしてみる
PythonのBeautifulSoupを使ってスクレイプをしてみました。
普段はPHPでスクレイプしているのですが、BeautifulSoupの方が汎用性が高い+処理速度が速いと聞いて使ってみました。
まずはPythonをインストールする
簡単にインストール手順をまとめておく
②Windows環境にBeautifulSoupをインストールする方法:4cc:So-netブログ
実際にAppleデータをスクレイプしてみる
サンプルはいつも御世話になっているAppDBさん
トップセールスのデータを取得してみる
#!/usr/bin/env python # -*- coding: utf-8 -*- import urllib2 from BeautifulSoup import BeautifulSoup #urlを指定
url = "http://appdb.lab.applica.jp/jp/"
#htmlを取得 htmlfp = urllib2.urlopen(url) html = htmlfp.read().decode("utf-8", "replace") htmlfp.close()
#データを整形+アプリのタイトルを取得 soup = BeautifulSoup(html) for link in soup.findAll("a", {'class':'app_title'}): print link.string
こんな感じで書くと、
パズル&ドラゴンズ
ぷよぷよ!!クエスト
LINE ポコパン
Clash of Clans
LINE ウィンドランナー
LINE バブル
LINE PLAY
RPG-ブレイブフロンティア【無料本格ロールプレイングゲーム】
ガンダムエリアウォーズ
LINE POP
ってな感じで各タイトルを取得をサクッと、とることができます
確かに覚えると楽そうですが、ずっとPHPerなのでやっぱりPHPって書いた方が
早いそうですw