【发布时间】:2014-07-09 19:17:59
【问题描述】:
如何使用 BeautifulSoup 通过另一个标签查找标签?在这个例子中,我想得到例如'0993 999 999',它位于另一个带有'Telefon:'文本的div后面。
我试图用这个来获得它:
print parsed.findAll('div',{'class':"dva" })[3].text
但它不能正常工作。我认为必须有一种方法可以告诉 BeautifulSoup 它就在“Telefon”文本或其他方式的后面。
<div class="kontakt">
<h2 class="section-head">Kontaktné údaje</h2>
<address itemprop="address" itemscope itemtype="http://schema.org/PostalAddress" >
<span itemprop="streetAddress" >SNP 12</span>, <span itemprop="postalCode" >904 01</span> <span itemprop="addressLocality" >Pezinok</span> </address>
<div class="jedna">Telefon:</div>
<div class="dva">013 / 688 27 78</div>
<div class="jedna">Mobil:</div>
<div class="dva">0993 999 999</div>
<div class="jedna">Fax:</div
<div class="dva">033 / 690 97 94</div>
<div class="jedna">E-mail:</div>
<div class="dva"><br /></div></div>
编辑:我试过了,也不管用。
tags = parsed.findAll('div',{'class':"jedna"})
for tag in tags:
if tag.text=='Telefon:':
print tag.next_siebling.string
请各位大神指点一下怎么做? 谢谢!
【问题讨论】:
标签: python html beautifulsoup html-parsing