BeautifulSoup无法通过其类找到标签
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BeautifulSoup无法通过其类找到标签相关的知识,希望对你有一定的参考价值。
以下是网页的一部分:
<div class="MPinfo">
<ul class="frontList">
<li>some text</li>
<li>some text</li>
<li>some text</li>
<li>some text</li>
<li>some text</li>
<li>some text
<a href="/some_local_link/8976">some text</a>;
<a href="/some_local_link/8943">some text</a>;
</li>
<li>E-mail:
<a href="mailto:Ss.Sssssss@mail.com">Ss.Sssssss@mail.com</a>
</li>
</ul>
</div>
我试图通过它的类获取div然后将电子邮件链接提取到电子邮件本身,如:Ss.Sssssss@mail.com
page = urllib.urlopen(link)
soup = BeautifulSoup(page.read())
print soup.find('div', attrs={'class': 'MPinfo'})
我已经尝试了几种获取div的方法,但它返回空列表或None
答案
您可以在div下选择所有li,它将是一个列表,因此您可以选择最后一个li元素,如[-1]
>>> soup.find("div",attrs={"class":"MPinfo"}).find_all("li")[-1].a.text
'Ss.Sssssss@mail.com'
以上是关于BeautifulSoup无法通过其类找到标签的主要内容,如果未能解决你的问题,请参考以下文章
如何从 BeautifulSoup4 中的 html 标签中找到特定的数据属性?
选择合适的标签传递给 BeautifulSoup 的 select 方法
如何通过beautifulsoup中的“class”属性捕捉标签? [复制]