<Python, pandas, Beautiful Soup> html tableからpandas dataframeへ。

html中にあるtableから、pandas dataframeを作る。
<tr> <td>タブとかを、ちくちくと、Beautiful Soupでパースしないといけないのか、、、
いやいや、そんな面倒なことは、誰かが、既に何かを作っているはず、、と思ってたら、あった。

pd.read_html()でいける。ちょー楽。

In [1]: import pandas as pd

In [2]: lst = pd.read_html('http://stocks.finance.yahoo.co.jp/stocks/history/?code=998407.O', flavor='bs4')

In [3]: lst[0].head()
Out[3]: 
        0   1         2                  3
0  日経平均株価 NaN  19871.96  前日比-23.74(-0.12%)

In [4]: lst[1].head()
Out[4]: 
            0         1         2         3         4
0          日付        始値        高値        安値        終値
1   20175819709.01  19929.48  19705.13   19895.7
2   20175219335.72   19464.3  19335.02   19445.7
3   20175119154.03  19311.21  19144.62  19310.52
4  201742819240.65  19264.57  19164.68  19196.74

すげー。

qiita.com

sinhrks.hatenablog.com