在结果对象中搜索 - Python,BeautifulSoup

时间:2013-10-31 01:07:07

标签: python beautifulsoup

我正在尝试在网站中获取一些信息,将其放入列表并将此列表导出到csv。 这是该网站的一部分,它会重复多次。

<img src="image.jpg" alt="Aclimação">
</a>
</div>
Clique na imagem para ampliar
</div>
<div class="colInfos">
<h4>Aclimação</h4>
<div class="addressInfo">
Rua Muniz de Souza, 1110<br>
Aclimação - São Paulo - SP<br>
01534-001<br>
<br>
(11) 3208-3418 / 2639-0173<br>
<a href="mailto:aclimacao.sp@escolas.com.br">aclimacao.sp@escolas.com.br</a><br>

我想在此站点中获取图像链接,名称(h4),地址(内部地址信息,每个br应该是列表中的单独项目)和每个学校的电子邮件(href mailto :)并导出到s csv文件。这就是我的尝试方式。但是有一个问题,因为我不知道如何搜索结果对象'endereco'我怎么能这样做? 这是我的代码:

import urllib2
from BeautifulSoup import BeautifulSoup


url = urllib2.urlopen("http://www.fisk.com.br/unidades?pais=1&uf=&rg=&cid=&ba=&un=")
soup = BeautifulSoup(url)
#nomes = soup.findAll('h4')

dados = []
i = 1

for endereco in enderecos:
    text = ''.join(endereco.findAll(???)) **<- how an I search the br's inside this?**
    dados[i] = text.encode('utf-8').strip()
    i = i +     

enderecos = soup.findAll('div', attrs={'class': 'colInfos'})

1 个答案:

答案 0 :(得分:0)

它真的很好用。您所要做的就是替换

dados = []
i = 1

for endereco in enderecos:
    text = ''.join(endereco.findAll(text=True))
    dados[i] = text.encode('utf-8').strip()
    i = i +     

enderecos = soup.findAll('div', attrs={'class': 'colInfos'})

dados = []

enderecos = soup.findAll('div', attrs={'class': 'colInfos'})

for endereco in enderecos:
    text = ''.join(endereco.findAll(text=True))
    dados.append(text.encode('utf-8').strip())
print dados