У меня есть html-страница
<a email="[email protected]" href="http://www.max.ru/agent?message&[email protected]" 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 · Day
Ваша ошибка заключалась в использовании словаря attrs для поиска элементов с пустым атрибутом электронной почты. Попробуйте это вместо этого.
#!/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 первого элемента a, который имеет атрибут email. Если вам нужны все электронные письма, попробуйте
for link in soup.findAll("a", email=True):
print link["email"]