使用 BeautifulSoup 阅读 table

Reading table using BeautifulSoup

我正在使用 BeautifulSoup 读取 HTML 文件。我在 HTML 中有一个 table,我需要从中读取数据,但是 HTML 包含多个 table。 为了区分 tables,我需要通过计算 <td> 标签来查看每行的列数。

我是这样算的:

for i in soup.find_all('tr'):
    for x in i.findallnext('td'):

此returns所有<td>标签在<tr>之后直到文档结束。但我需要知道行首 (<tr>) 和行首 (</tr>) 之间的 <td> 标记数。

<tr> <!-- Should return 2 columns, but will return 4 in script. -->
    <td></td>
    <td></td>
</tr>
<tr>
    <td></td>
    <td></td>
</tr>

findallnext 替换为 find_all

findallnext 如您所说,给出文档末尾之后的所有标签。

find_all 给你子元素。