有没有办法从for i soup.select(table)
获得第一个结果?我只想要第一个表,之后的每个表都应该被忽略。代码后跟一个if语句:if i.find('th', text = 'Foo'):
TLDR;
寻找类似的内容:if i[0].find('th', text = 'Foo'):
答案 0 :(得分:2)
一种方法是在第一次迭代后立即break
:
for i in soup.select('table'):
if i.find('th', text = 'Foo'):
...
break
另一个是链接方法,如果找不到元素,则捕获异常:
try:
el = soup.select('table')[0].find('th', text='Foo')
except AttributeError, TypeError:
print('element not found')
注意:soup.select('table')[0]
和soup.find('table')
会给出相同的结果