使用python将HTML表转换为CSV文件

使用python将HTML表转换为CSV文件,python,pandas,beautifulsoup,Python,Pandas,Beautifulsoup,我对pandas很陌生,所以我想用pandas将这个HTML表格转换成CSV文件,但是我的CSV文件给了我一个奇怪的信号,它没有将所有表格转换成CSV。 这是我的密码。我读过关于使用beautifulsoup的文章,但我不太确定如何使用该函数 import as pandas df = pd.read_html('https://aim-sg.caas.gov.sg/aip/2020-10-13/final/2020-09-10-Non-AIR' 'AC/html/e

我对pandas很陌生,所以我想用pandas将这个HTML表格转换成CSV文件,但是我的CSV文件给了我一个奇怪的信号,它没有将所有表格转换成CSV。
这是我的密码。我读过关于使用beautifulsoup的文章,但我不太确定如何使用该函数

import as pandas
df = pd.read_html('https://aim-sg.caas.gov.sg/aip/2020-10-13/final/2020-09-10-Non-AIR'
              'AC/html/eAIP/ENR-3.1-en-GB.html?s=B2EE1C5E1D2A684224A194E69D18338A560504FC#ENR-3.1')
df[0].to_csv('ENR3.0.csv')
谢谢大家!

已编辑:我已将导入更改为
import pandas as dp
,但仍然无法将所有HTML表转换为CSV文件


非常感谢你的帮助

您可以使用
pandas
本身来执行此操作。你把
import
语句搞砸了。以下是如何正确执行此操作:

import pandas as pd
df = pd.read_html('https://aim-sg.caas.gov.sg/aip/2020-10-13/final/2020-09-10-Non-AIR'
              'AC/html/eAIP/ENR-3.1-en-GB.html?s=B2EE1C5E1D2A684224A194E69D18338A560504FC#ENR-3.1')

df[0].to_csv('ENR3.0.csv', index = False)
如果要获取变量
df
中存在的所有
数据帧
,请将最后一行替换为:

for x in range(len(df)):
    df[x].to_csv(f"CSV_File_{x+1}", index = False)

进口声明中有问题
它应该是
import pandas as pd
,而不是
import as pandas
,因为您在下面的代码中使用的是别名
pd

学习BeautifulSoup,使用lxml解析器解析所需数据(速度非常快)。
此链接可能会帮助您:


如果需要任何其他帮助,请在此帖子上留言,并尝试对我们的问题进行排序:)

在代码中进行了更正:

import pandas as pd
df = pd.read_html('https://aim-sg.caas.gov.sg/aip/2020-10-13/final/2020-09-10-Non-AIR'
              'AC/html/eAIP/ENR-3.1-en-GB.html?s=B2EE1C5E1D2A684224A194E69D18338A560504FC#ENR-3.1')

df[0].to_csv('ENR3.0.csv')

你好,我已经编辑了我的程序。但是,它仍然没有将所有HTML表转换为CSV文件。是的,我将我的导入语句更改为“将熊猫作为pd导入”Ok…做一件事。打开一个新文件,只需复制粘贴我提供的代码,并检查其是否有效。我使用您提供的代码,但它不会将所有表格从HTML转换为CSV。然后只需使用
df.to_CSV
而不是
df[0]。to_CSV
您好!谢谢你的链接,我会仔细阅读的。我已经做了必要的调整,将熊猫作为pd导入,但它仍然没有将所有HTML表转换为CSV文件。这是因为熊猫本身无法解决您的问题,您必须使用lxml或HTML解析器解析HTML文件,以便提取所需信息并以表格格式存储。BeautifulSoup或类似的东西可以解决您的问题。请尝试以下lib:pip将html安装到csv()。这可能也有帮助。雷丁:好的,我会读的,非常感谢你的帮助:)