首页 > 解决方案 > 熊猫和 HTML 标签

问题描述

我正试图把桌子从这个网站上拉下来。当我使用 pd.read_html 加载 URL 时,我按预期返回了一系列数据帧,但问题是表格单元格中的 HTML 标记已经消失。有什么方法可以撕掉表格并使用熊猫保留表格单元格中的 HTML?

import pandas as pd

df = pd.read_html('http://geppopotamus.info/game/tekken7fr/asuka/data.htm#page_top')

我希望细胞是这样的

<span class="tooltip" title="すいけい">翠勁
<sup>ヨミ</sup></span><br>
<img src="../lp.bmp" class="c">/上

但我明白了

翠勁 ヨミ /上

我使用了漂亮的汤来解析 HTML,然后将数据传递给 pandas,它仍然剥离了内部 HTML。

标签: pythonpandasdataframedata-science

解决方案


pandas read_html 已经解析了您的 html。正如评论中提到的那样,看看 BeautifulSoup。下面提取所有的table标签html。您可以根据需要调整 css 选择器。

import requests
from bs4 import BeautifulSoup
url = 'http://geppopotamus.info/game/tekken7fr/asuka/data.htm#page_top'
res = requests.get(url)
soup = BeautifulSoup(res.content,'lxml')
tables = [str(table) for table in soup.select('table')]
print(tables)

推荐阅读