2015-12-14 42 views
-1

我有從link.I抽取數據的腳本有如下因素的resultSet:如何從BeautifulSoup結果只保留一部分從HTML代碼

<p class="flag"><img alt="Paris" src="/images/flags/FR.gif"/></p> 
 
<p class="flag"><img alt="Austria" src="/images/flags/AT.gif"/></p> 
 
<p class="flag"><img alt="Switzerland" src="/images/flags/CH.gif"/></p> 
 
<p class="flag"><img alt="Malta" src="/images/flags/MT.gif"/></p> 
 
<p class="flag"><img alt="Sydney" src="/images/flags/AU.gif"/></p> 
 
<p class="flag"><img alt="Rotterdam" src="/images/flags/NL.gif"/></p> 
 
<p class="flag"><img alt="London" src="/images/flags/UK.gif"/></p> 
 
<p class="flag"><img alt="London" src="/images/flags/UK.gif"/></p> 
 
<p class="flag"><img alt="West + Wales" src="/images/flags/UK.gif"/></p> 
 
<p class="flag"><img alt="Melbourne" src="/images/flags/AU.gif"/></p> 
 
<p class="flag"><img alt="London" src="/images/flags/UK.gif"/></p> 
 
<p class="flag"><img alt="Bulgaria" src="/images/flags/BG.gif"/></p> 
 
<p class="flag"><img alt="Amsterdam" src="/images/flags/NL.gif"/></p> 
 
<p class="flag"><img alt="Scotland" src="/images/flags/UK.gif"/></p> 
 
<p class="flag"><img alt="Midlands" src="/images/flags/UK.gif"/></p>

我怎樣才能保持爲字符串/文本只有以下:

  • FR
  • AT
  • CH
  • 等...

回答

0

查找具有內部src屬性 「標誌」 所有img元件和位於p元件內側class="flag",然後提取從src屬性值的語言值:

import re 

from bs4 import BeautifulSoup 

pattern = re.compile(r"/(\w+)\.gif$") 
for img in soup.select("p.flag img[src*=flags]"): 
    match = pattern.search(img["src"]) 
    if match: 
     print(match.group(1)) 
+0

非常感謝!它的工作原理和幫助我很多! –

-1
re.findall(r'src=".+?/(\w+)\.gif"', text)