我目前正在尝试从网页中的某些表中检索一些信息。为此,我使用了Beautifulsoup的find_all
方法。问题是我需要在h2
标签下的每个表之前获取一些文本。这就是我使用soup.find_all(['table','h2'])
的原因,但我不知道如何从结果中检索标记(以确定它是标题还是表格)。我想要这样的东西:
for tr in soup.find_all(['table','h2']):
if tr.tag='table':
print("table info")
elif tr.tag='h2':
print("header info")
答案 0 :(得分:1)
相反,请使用.find_previous_sibling()
method转到每个h2
元素的上一个table
元素:
for table in soup.find_all('table'):
header = table.find_previous_sibling("h2").get_text()
print(header)