Python

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

投稿日:

概要

以下で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

執筆者:


comment

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

関連記事

Anaconda + PyCharmでWindows python開発環境構築~Hello worldまで

今後、初心者でもコーティングしやすく、データ分析ライブラリが豊富なpython中心でいろいろやっていきたいと思います。まずは、機械学習ライブラリなどが最初からそろったAnacondaパッケージとしてp …

【Python】階乗と順列と組合せ

Contents1 目的2 階乗の計算方法3 順列の計算4 組合せの計算5 まとめ 目的 統計的なデータ分析アプローチの中には確率的な考え方も多く使われます。今回は確率的な手法を用いる際に必要となる基 …

Python dataframeからMySQLにinsertする

Contents1 目的2 環境3 Step1 : 挿入先テーブル用意4 Step2 : 挿入用データ準備5 Step3 : MySQLへの挿入6 補足 目的 pythonのdataframeはデータ …

【Python】tkinterで画像を一定時間ごとに自動切換え

Contents1 目的2 使用ライブラリ3 Step1 : による画像表示4 Step2 : 画像の切り替え5 まとめ 目的 pythonでは簡単にGUIを作成できるライブラリとしてtkinterが …

【Python】決定係数と相関係数の計算

Contents1 目的2 決定係数とは?3 Pythonによる決定係数の計算4 相関係数 目的 前回、あるデータXからデータYの関係を単回帰による線形方程式で表すことを行いました。ただし、これはあく …

言語切り替え

カテゴリー