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】標準偏差と分散の計算

Contents1 目的2 標準偏差3 Pythonによる標準偏差の計算4 分散 目的 以前の記事で四分位偏差によりデータの分散度の計算を行いましたが、四分位偏差ではデータの代表値である四分位数のみを …

Python smtplibでメール送信

Contents1 目的2 環境3 コード 目的 pythonからSMTPサーバにメールを送信する。 環境 Windows10Python 3.7.3 (Anaconda 4.7.10) コード # …

Python 辞書型の基本

Contents1 目的2 辞書型データの作成3 要素の取り出し4 全キーの取得5 全値の取得6 全キーおよび値の取得7 リスト型から辞書型への変換8 キーの有無確認9 要素の追加10 要素の削除11 …

【Python】単回帰の計算と表示

Contents1 目的2 回帰の式3 単回帰とは?4 最小二乗法5 pythonによる実装6 注意点 目的 ある得られたデータをもとに、今後発生するデータが何かを予測したいという場合があります。例え …

【Python】銀行口座情報の自動取得

Contents1 目的2 開発環境3 selenium のインストール4 Chrome Driverをインストールする5 Pythonスクリプト6 注意点 目的 銀行口座の預金残高を確認したい。でも …

言語切り替え

カテゴリー