Python

【Python】pandasでhtmlのtableをスクレイピング

投稿日:2020年9月8日 更新日:

概要

以下でBeautifulSoupを使ってwebページのhtmlからtableをスクレイピングしたときに少しはまったときの対処法について書きましたが、pandasを使ったらそんなこと悩んだ時間が何だったんだろうというくらい一瞬でできてしまったのでメモします。

tableを取得するコード

BeautifulSoupを使う場合

import requests
from bs4 import BeautifulSoup
 
r = requests.get('http://example.com',headers = headers)
soup = BeautifulSoup(r.content, "lxml")
 
table = soup.findAll('table',{'class':"test_table"})[0]
 
rows = table.findAll('tr')
for row in rows:
    print(row)

pandasを使う場合

import pandas as pd

url = 'http://example.com'
df = pd.read_html(url)
print(df[0])

pandasを使用する場合は得られるデータ形式がDataFrameですが、pythonで表を扱う場合は最初からDataFrameでとれたほうが有難いので全く問題無し。今後どんどん使っていってデメリットとかあるかは調べてみます。

以上

Pythonを一から学ぶのにおすすめの本はコチラ

-Python

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

【Python】K-NNによる分類モデル

Contents1 概要2 使用するデータ3 ソースコード4 勉強になったこと 概要 Pythonの機械学習用ライブラリといえばscikit-learnです。 今回はこのscikit-learnのなか …

WindowsのJupyterに外部からアクセスする

Contents1 目的2 環境3 Step1 : パスワードのハッシュ化4 Step 2 : configファイルの設定5 Step3 : Jupyter Notebookの起動6 Step4 : …

【Python】標準変化量と変異係数計算

Contents1 概要2 データの「まれ」さ3 標準変化量4 Pythonによる標準変化量の計算5 変異係数 概要 以前にデータの分散度を測る標準偏差という指標についてpythonで求めてみました。 …

【Python】活性化関数を描画する

Contents1 概要2 使用するライブラリ3 ステップ関数4 シグモイド関数5 tahn関数6 ReLu関数7 Leaky ReLu関数8 まとめ9 コード全体 概要 Deep Learningの …

【Python】BeautifulSoupでtableが最初の数行しか取得できない場合の対処

Contents1 概要2 環境3 発生事象3.0.1 実行結果4 対処法 概要 PythonでWebスクレイピングをするときの定番であるBeautifulsoupですが、tableを取得しようとした …

言語切り替え

カテゴリー