【Python】スクレイピングしたhtmlのtableタグのパースにはpandasのread_htmlが最高

2021/10/27

Python

t f B! P L

Pandasのread_htmlが有能すぎる。以上。

使い方

# html: htmlのstr
# urlも可
tables = pd.read_html(html)

# attrsでidやclassを指定できる
# hogeクラスのtableのみとる例
tables = pd.read_html(html, attrs={"class": "hoge"})

めっちゃいい

tableタグの場合、BeautifulSoupでtableタグごととった後に、その中のtdやtrをパース処理を書く必要があるが、これだとそのままDataFrameにしてくれるので強すぎる。

tableタグにしか効かないので、他のタグにデータが載っている場合は諦めて自分で実装する。

ラベル

QooQ