0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PythonでHTMLをExcelファイルに変換する方法

Posted at

データ処理や分析の過程で、ウェブページから情報を取得し、より操作しやすい形式に変換する必要がよくあります。HTMLテーブルは、一般的なデータ表示形式として、オンラインレポートや統計資料などのシーンで広く使用されていますが、その構造化レベルが低く、データのクリーンアップや分析には適していません。HTMLテーブルをExcelワークシートに変換することで、Excelの強力なデータ処理機能を利用して、並べ替え、フィルタリング、計算などが簡単に行えるだけでなく、他者と共有したり、長期的に保存したりすることが可能になります。Pythonを使用すれば、この変換プロセスを効率的に実行し、データ移行を迅速に達成できます。
本記事では、Pythonを使用してHTMLをExcelファイルに変換する方法を紹介します。

本記事で使用する方法では、Spire.XLS for Pythonが必要です。PyPIコマンド: pip install spire.xls

無料ライセンスの申請

PythonでHTMLをExcelワークシートに変換

Workbook.LoadFromHTML()メソッドを使用してHTMLファイルを直接読み込み、Workbook.SaveToFile()メソッドで指定されたExcelファイル形式に保存することができます。以下に詳しい操作手順を示します。

  • 必要なモジュールをインポートします。
  • Workbookオブジェクトを作成します。
  • Workbook.LoadFromHTML()メソッドを使用してHTMLファイルを読み込みます。
  • 単純なHTMLテーブルでは、いくつかのフォーマット情報が不足している場合があるため、変換前に列幅の自動調整などのフォーマット設定を行うことができます。
  • Workbook.SaveToFile()メソッドを使用してExcelファイルに変換し、保存します。
  • リソースを解放します。

コード例

from spire.xls import Workbook

# Workbookのインスタンスを作成
workbook = Workbook()

# HTMLファイルを読み込む
workbook.LoadFromHtml("Sample.html")

# 列の自動調整
for i in range(workbook.Worksheets.Count):
    worksheet = workbook.Worksheets.get_Item(i)
    for j in range(1, worksheet.Columns.Count + 1):
        worksheet.AutoFitColumn(j)

# Excelファイルに変換
workbook.SaveToFile("output/HTMLをExcelに変換.xlsx")
workbook.Dispose()

結果
PythonでHTMLをExcelに変換

PythonでHTMLテキストをExcelのセルに書き込む

Workbook.Worksheets.get_Item()メソッドを使用して指定のワークシートを取得し、Worksheet.Range[]プロパティを使用して指定のセルまたはセル範囲を取得することができます。その後、CellRange.HtmlStringプロパティを使用してHTMLテキストをセルに挿入し、対応するテキストとフォーマットを表示できます。以下に操作手順の例を示します。

  • 必要なモジュールをインポートします。
  • Workbookオブジェクトを作成します。
  • Workbook.Worksheets.get_Item()メソッドを使用してワークシートを取得します。
  • Worksheet.Range[]プロパティを使用してセルを取得します。
  • HTMLコードを指定します。
  • CellRange.HtmlStringプロパティを使用してHTMLコードに対応するテキストをセルに挿入します。
  • Workbook.SaveToFile()メソッドを使用してExcelブックを保存します。
  • リソースを解放します。

コード例

from spire.xls import Workbook, FileFormat

# Workbookのインスタンスを作成
workbook = Workbook()

# 最初のワークシートを取得
sheet = workbook.Worksheets.get_Item(0)

# HTML文字列を指定
htmlString = "<span style='font-size: 20px; color: blue;'><strong><u>Employee Data Table</u></strong></span>"

# HTML文字列をワークシートに挿入
sheet.Range[1, 1].HtmlString = htmlString

# 列の幅を自動調整
sheet.AutoFitColumn(1)

# ワークブックを保存
workbook.SaveToFile("output/HTMLテキストをExcelに挿入.xlsx", FileFormat.Version2016)
workbook.Dispose()

結果
PythonでHTMLテキストをExcelのセルに書き込む

この記事では、Pythonを使用してHTMLをExcelファイルに変換する方法を紹介しました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?