我遇到了一个没有解释的BS4错误,至少没有我理解的错误,有人可以帮助我知道这意味着什么吗? 这是代码:
soup = BeautifulSoup(browser.page_source, "html.parser")
soup.prettify()
container = soup.find('table', {'id': 'RmvMainTable'})
containerlv2 = container.find('tr')
# related_files = containerlv2[6].find('div')
# print(related_files)
for re_file in containerlv2[6].find('div'):
print("lol")
这是错误:
Traceback (most recent call last):
File "/home/user/Python projects/test/test3.py", line 162, in <module>
for re_file in containerlv2[6].find('div'):
File "/usr/lib/python3/dist-packages/bs4/element.py", line 958, in __getitem__
return self.attrs[key]
KeyError: 6
如果您注意到#out代码,则会给出完全相同的错误
答案 0 :(得分:1)
containerlv2
是一个标记对象,它没有6作为键,因此你得到KeyError: 6
如果您要尝试在第7个div
标记中搜索tr
代码,请使用正确的方法:
containerlv2 = container.find_all('tr')
related_files = containerlv2[6].find('div')
首先,您使用find_all
获取tr
中的所有container
个标记,并将其放入列表containerlv2
,然后在其中搜索div
containerlv2
答案 1 :(得分:0)
containerlv2 = container.find('tr')
这将返回一个标记对象,并像这样
索引一个标记对象containerlv2[6]