【python】HTMLからテーブルを読み込む(pd.io.html.read_html)

準備

pandasのインポート

import pandas as pd

pd.io.html.read_html()で、HTMLのからテーブルを読み込む

pd.io.html.read_html()を使用すると、指定したURLからテーブルのデータだけを抜き出してくれる。

url = 'https://stocks.finance.yahoo.co.jp/stocks/history/?code=2282.T'
dframe = pd.io.html.read_html(url)

dframe[1][0:5]

#出力結果
        0	1	2	3	4	5	6
0	日付	始値	高値	安値	終値	出来高	調整後終値*
1	20171122944	2949	2880	2910	7045000	2910
2	20171113245	3280	3230	3270	915000	3270
3	201710313250	3260	3230	3260	1082000	3260
4	201710303315	3315	3240	3275	1956000	3275

CSVで保存

to_csv()を使う。

dframe[1].to_csv('table_data.csv')

まとめ

いちいちDOMを指定しなくても、テーブルだけを取得してくれるのですごく便利そう。
スクレイピングする時に役立つ気がする。