スクレイピングによる情報抽出

スクレイピングはHTMLページの中のタグとクラスまたはIDをターゲットにするのが基本である。HTMLのタグではクラスまたはIDが指定されていることが多いので、これが抽出する情報のターゲティングに活用される。Kaggleのデータも多くはオープンサイトからスクレイピングによって抽出されたものである。以下は、Alexaゴミ回収スキルを作るにあたり、市の公開ページから必要な情報を抽出した例。

import requests
from bs4 import BeautifulSoup
def main():
    #ターゲットページを指定
    url = 'http://www2.city.takarazuka.hyogo.jp/gomi/gomi_t003.html'
    response = requests.get(url)
    # response から HTML 部分(content) を取得
    content = response.content
    # BeautifulSoup に content を渡して解析の準備をする
    soup = BeautifulSoup(content, 'html.parser')
    # ターゲットにするタグとクラス名を指定
    yobi_1 = soup.find('table', class_='tablegp00')
    print(yobi_1.get_text())
if __name__ == '__main__':
    main()

燃やすごみ
火曜日  金曜日  
プラスチック類
水曜日  
かん・びん
第2木曜日  第4木曜日  
紙・布
第2月曜日  第4月曜日  
ペットボトル
第1月曜日  第3月曜日  
小型不燃ごみ
第1木曜日  第3木曜日  

コメントを残す