Как использовать lxml для получения сообщения с сайта? - PullRequest
0 голосов
/ 30 октября 2009

На exam.com не про погоду:

Tokyo: 25°C

Я хочу использовать Django 1.1 и lxml для получения информации на сайте. Я хочу получить информацию только "25".

Структура HTML exam.com выглядит следующим образом:

<p id="resultWeather">
    <b>Weather</b>
    Tokyo:
    <b>25</b>°C
</p>

Я студент. Я делаю небольшой проект с моими друзьями. Пожалуйста, объясните мне легко понять. Большое спасибо!

1 Ответ

4 голосов
/ 30 октября 2009

BeautifulSoup больше подходит для разбора html, чем lxml.

что-то вроде этого может быть полезным:

def get_weather():
    import urllib
    from BeautifulSoup import BeautifulSoup
    data = urllib.urlopen('http://exam.com/').read()
    soup = BeautifulSoup(data)
    return soup.find('p', {'id': 'resultWeather'}).findAll('b')[-1].string

получить содержимое страницы с помощью urllib, проанализировать его с помощью BeautifulSoup, найти P с id = resultWeather, найти последний B в нашем P и получить его содержимое

...