📜  在Python中将HTML表格转换为CSV文件

📅  最后修改于: 2022-05-13 01:55:46.964000             🧑  作者: Mango

在Python中将HTML表格转换为CSV文件

CSV 文件是使用逗号分隔值的逗号分隔值文件。当我们谈论机器学习、数据处理和数据可视化时,CSV 文件在当今世界非常有用。在本文中,我们将讨论如何将 HTML 表格转换为 CSV 文件。

在Python中将 HTML 表转换为 CSV 文件

示例:假设 HTML 文件看起来像,

python-html-table-to-csv

可以使用Python的 BeautifulSoup 和 Pandas 模块将 HTML 表格转换为 CSV 文件。这些模块不是Python内置的。要安装它们,请在终端中键入以下命令。

pip install BeautifulSoup
pip install pandas

用于将 HTML 表格转换为 CSV 文件的 Python3 代码

# Importing the required modules 
import os
import sys
import pandas as pd
from bs4 import BeautifulSoup
   
path = 'html.html'
   
# empty list
data = []
   
# for getting the header from
# the HTML file
list_header = []
soup = BeautifulSoup(open(path),'html.parser')
header = soup.find_all("table")[0].find("tr")
  
for items in header:
    try:
        list_header.append(items.get_text())
    except:
        continue
  
# for getting the data 
HTML_data = soup.find_all("table")[0].find_all("tr")[1:]
  
for element in HTML_data:
    sub_data = []
    for sub_element in element:
        try:
            sub_data.append(sub_element.get_text())
        except:
            continue
    data.append(sub_data)
  
# Storing the data into Pandas
# DataFrame 
dataFrame = pd.DataFrame(data = data, columns = list_header)
   
# Converting Pandas DataFrame
# into CSV file
dataFrame.to_csv('Geeks.csv')

输出:

python-html-to-csv