BeautifulSoup刮街道地址

时间:2013-12-07 09:40:36

标签: python beautifulsoup scrape

我使用远端底部的代码来获取 weblink Masjid名称。但是我想获得面额街道地址。请帮助我被困住。

目前我收到以下内容

网络链接:

<div class="subtitleLink"><a href="http://www.salatomatic.com/d/Tempe+5313+Masjid-Al-Hijrah">

清真寺名称

<b>Masjid Al-Hijrah</b>

但是想得到以下内容;

面额

<b>Denomination:</b> Sunni (Traditional)

街道地址

<br>45 Station Street (Sydney)&nbsp;&nbsp;

以下代码会删除以下内容

<td width=25><a href="http://www.salatomatic.com/d/Tempe+5313+Masjid-Al-Hijrah"><img src='http://www.halalfire.com/images/en/photo_small.jpg' alt='Masjid Al-Hijrah' title='Masjid Al-Hijrah' border=0 width=48 height=36></a></a></td><td width=10><img src="http://www.salatomatic.com/images/spacer.gif" width=10 border=0></td><td nowrap><div class="subtitleLink"><a href="http://www.salatomatic.com/d/Tempe+5313+Masjid-Al-Hijrah"><b>Masjid Al-Hijrah</b></a>&nbsp;&nbsp; </div><div class="tinyLink"><b>Denomination:</b> Sunni (Traditional)<br>45 Station Street (Sydney)&nbsp;&nbsp;</div></td><td align=right valign=center><div class="tinyLink"></div></td>

CODE:

from bs4 import BeautifulSoup
import urllib2

url1 = "http://www.salatomatic.com/c/Sydney+168"
content1 = urllib2.urlopen(url1).read()
soup = BeautifulSoup(content1) 

results = soup.findAll("div", {"class" : "subtitleLink"})
for result in results :
    br = result.find('b')
    a = result.find('a')
    currenturl =  a.get('href')
    if not currenturl.startswith("http"):
        currenturl = "http://www.salatomatic.com" + currenturl
        print currenturl
    elif currenturl.startswith("http"):
        print a.get('href')
    pos = br.get_text()
    print pos

1 个答案:

答案 0 :(得分:1)

您可以使用值<div>的{​​{1}}属性检查下一个class元素,该元素包含tinyLink<b>标记并提取其字符串:

<br>