要解决这个问题,可以使用BeautifulSoup库的find_all方法来查找所有的表格,并使用切片来限制只取前2个表格。以下是一个示例代码:
from bs4 import BeautifulSoup
html = """
表格示例
Header 1 |
Header 2 |
Header 3 |
Data 1 |
Data 2 |
Data 3 |
Header A |
Header B |
Header C |
Data A |
Data B |
Data C |
Header X |
Header Y |
Header Z |
Data X |
Data Y |
Data Z |
"""
soup = BeautifulSoup(html, 'html.parser')
# 查找所有的表格,并限制只取前2个
tables = soup.find_all('table')[:2]
# 打印表格的内容
for table in tables:
rows = table.find_all('tr')
for row in rows:
cells = row.find_all('td')
for cell in cells:
print(cell.text)
print('---')
print('========')
运行上述代码将输出前两个表格中的内容:
Data 1
Data 2
Data 3
---
========
Data A
Data B
Data C
---
========