разобрать HTML красивый суп - PullRequest
0 голосов
/ 02 октября 2010

У меня есть HTML-страница

<a email="corporate@max.ru" href="http://www.max.ru/agent?message&to=corporate@max.ru" title="Click herе" class="mf_spIco spr-mrim-9"></a><a class="mf_t11" type="booster" href="http://max.ru/mail/corporate/">

Мне нужна строка электронного письма для разбора

    soup = BeautifulSoup(data
    string = soup.find("a",{"email": ""})
    print string

Но это не работает. Где ошибка?

1 Ответ

4 голосов
/ 02 октября 2010

Ваша ошибка заключалась в использовании attrs dict для поиска элементов с пустым атрибутом электронной почты.Попробуйте вместо этого.

#!/usr/bin/env python

from BeautifulSoup import BeautifulSoup
import urllib2

req = urllib2.urlopen('http://worldnuclearwar.ru')

soup = BeautifulSoup(req)
print soup.find("a", email=True)["email"]

Чтобы напечатать атрибут email элемента first a, который имеет атрибут email.Если вы хотите все электронные письма, попробуйте

for link in soup.findAll("a", email=True):
    print link["email"]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...