2010-10-02 156 views
0

我有一個HTML頁面解析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/"> 

我neeed解析電子郵件串

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

但它不能正常工作。 哪裏錯了?

回答

4

您的錯誤是在使用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"] 
+0

已經嘗試過。 – Alexander 2010-10-02 18:44:13

+0

文件「/usr/lib64/python2.6/site-packages/BeautifulSoup.py」,第599行,在__getitem__ 返回self._getAttrMap()[key] KeyError:'email' – Alexander 2010-10-02 18:44:20

+0

被編輯以顯示可完成的腳本對我來說 – Day 2010-10-02 19:03:09