我正在尝试阅读的HTLM页面有21个表.我尝试引用的特定表是唯一的,因为它具有唯一的< caption>并不是所有的表都带有标题.
这是该结构的代码段:
<table class="wikitable">
<caption>Very long caption</caption>
<tbody>
<tr align="center" bgcolor="#efefef">
我试过了:
soup = BeautifulSoup(r.text, "html.parser")
table1 = soup.find('table', caption="Very long caption")
但是返回None对象.
解决方法:
soup.find('table', caption="Very long caption")
这基本上意味着-定位具有具有非常长的标题值的标题属性的表元素.这显然什么也没返回.
我要做的是通过文本找到标题元素并得到parent table
element:
soup.find("caption", text="Very long caption").find_parent("table")