pd.read_html导入长字符串而不是表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pd.read_html导入长字符串而不是表相关的知识,希望对你有一定的参考价值。

我使用pd.read_html尝试导入表,但是运行它时却得到了一个长字符串。有没有一种简单的方法可以将结果的格式更改为每行1个单词而不是一个长字符串,或者我应该使用除pd.read_html之外的函数?谢谢!

这是我的代码:

import requests
import pandas as pd
url ='http://www.linfo.org/acronym_list.html'
dfs = pd.read_html(url, header =0)
df = pd.concat(dfs)
df

我也使用了这个并且得到了相同的结果:

import pandas as pd
url ='http://www.linfo.org/acronym_list.html'
data = pd.read_html(url, header=0)
data[0]

出[1]:

ABCDEFGHIJKLMNOPQRSTUVWXYZ一个AMD高级微设备API应用程序编程接口ARP地址解析协议ARPANET高级研究计划局网络AS自治系统ASCII美国信息交换标准代码AT&T美国电话电报公司ATA高级技术附件ATM异步传输模式BB字节BELUG Bellevue Linux用户组BGP边界网关协议...

答案

问题是如何在此站点中创建表。

根据https://www.w3schools.com/html/html_tables.asp,用

标签定义HTML表。每个表行都用标记定义。表头是用
标记定义的。默认情况下,表标题为粗体和居中。表数据/单元格用标记定义。

如果您按CTRL + SHIFT + I,则可以检查网站的html元素,您将看到此网站不符合此标准。这就是为什么您无法使用pandas.read_html获得正确的数据框。

以上是关于pd.read_html导入长字符串而不是表的主要内容,如果未能解决你的问题,请参考以下文章

pd.read_html-ValueError:未找到表

Pandas pd.read_html() 函数给了我“HTTP 错误 403:禁止”

Python 读取HTML表格 pd.read_html()

有没有办法通过熊猫读取BeautifulSoup输出以读取表?

pandas 没有属性 read_html 树莓派

另类爬取表格数据