我正在尝试解析一些 HTML,并且想提取与特定模式匹配的链接。我正在使用find
使用正则表达式的方法,但它没有给我正确的链接。这是我的片段。有人可以告诉我我做错了什么吗?
from BeautifulSoup import BeautifulSoup
import re
html = """
<div class="entry">
<a target="_blank" href="http://www.rottentomatoes.com/m/diary_of_a_wimpy_kid/">RT</a>
<a target="_blank" href="http://www.imdb.com/video/imdb/vi2496267289/">Trailer</a> –
<a target="_blank" href="http://www.imdb.com/title/tt1196141/">IMDB</a> –
</div>
"""
soup = BeautifulSoup(html)
print soup.find('a', href = re.compile(r".*title/tt.*"))['href']
我应该得到第二个链接,但 BS 总是返回第一个链接。这href
第一个链接的甚至与我的正则表达式不匹配,那么为什么它会返回它?
Thanks.
find
只返回第一个<a>
标签。你要findAll http://www.crummy.com/software/BeautifulSoup/documentation.html#The%20basic%20find%20method:%20findAll%28name,%20attrs,%20recursive,%20text,%20limit,%20**kwargs%29.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)