2013-12-03 1 views
1

У меня возникли трудности с очисткой адреса со следующей веб-ссылки, пожалуйста, помогите мне очистить адрес.Скрестите адрес с помощью BeautifulSoup для Python

http://www.salatomatic.com/d/Revesby+17154+Ahlus-Sunnah-Wal-Jamaah-Revesby

исходный код выше WebLink как следовать

<td width="100%"><div class="titleBM">Bankstown Masjid </div>Meredith Street, Bankstown, New South Wales 2200</td> 

Я пытаюсь очистить значение немедленно после </div>

мой текущий код не завершен, но выглядит следующим образом

content1 = urllib2.urlopen(url1).read() 
soup1 = BeautifulSoup(content1) 
div1 = soup1.find('div', {'class':'titleBM'}) #get the div where it's located 
span1 = div1.find('</div>') 
pos1 = span1.text  

print datetime.datetime.now(), 'street address: ' , pos1) 

ответ

1

Текст следующий родной брат <div> элемента, так что используйте next_sibling:

from bs4 import BeautifulSoup 
import urllib2 
import datetime 

url1 = 'http://www.salatomatic.com/d/Revesby+17154+Ahlus-Sunnah-Wal-Jamaah-Revesby' 

content1 = urllib2.urlopen(url1).read() 
soup1 = BeautifulSoup(content1) 
div1 = soup1.find('div', {'class':'titleBM'}) #get the div where it's located 
pos1 = div1.next_sibling 

print datetime.datetime.now(), 'street address: ' , pos1 

Выполнить это нравится:

python2 script.py 

Это дает:

2013-12-03 12:55:41.306271 street address: 9-11 Mavis Street, Revesby, New South Wales 2212 
0

это происходит из-за JavaScript , вы должны использовать селен-webdriver для решения этой проблемы:

from selenium.webdriver import Firefox 

Найти ещё здесьLink