2016-12-06 160 views
0

我有以下代碼:BeautifulSoup獲取文本鏈接?

soup = BeautifulSoup(content, "html.parser") 
block = soup.select('.meta-info a') 

我需要在塊.meta_info

所有環節後,我嘗試從陣列block獲得的鏈路上的所有文字,只有具有電子郵件地址作爲文本鏈接。

我的意思是:

<a href="">Bla bla [email protected]</a> 

我怎樣才能得到它呢?

我試着爲:

for item in block: 
      email_par = emailFromString(item.text) 

      if email_par[0]: 
       pass 

但它的工作原理並不穩定

+0

發佈一些HTML以便我們可以更好地理解 – user2915097

回答

1

此鏈接可能會有所幫助css select with regex

,如果你仍然不能想出辦法來試試這個, 請確保您有BeautifulSoup最新版本

import re 
soup = BeautifulSoup(content, "html.parser") 
block = soup.select('.meta-info a') 

emails = block.find_all(text=re.compile('.*@.*\.com')) 

現在您可以遍歷它並從每個鏈接中提取文本

1
import re 
soup.find_all(name='a', text=re.compile(r'@')) 
相關問題