2017-04-26 144 views
1

我抓取網站和
標籤的結構是:解析<br>標籤與beautifulsoup

<div class="content" 
    <p> 
     "C Space" 
     <br> 
     "802 white avenue" 
     <br> 
     "xyz 123" 
     <br> 
     "Lima" 
    </p> 

當我使用beautifulsoup使用下面的命令來獲取文本:

html=urlopen("something") 
bsObj = BeautifulSoup(html,"html5lib") 
templist = bsObj.find("div",{"class":"content"}) 
print(templist.get_text()) 

我得到以下輸出: C Space802 white avenuexyz 123Lima

而我想輸出爲:C空間802白色大道xyz 123 Lim一個。

從後續br標籤獲取數據時,如何添加額外的空格?

感謝

回答

1

您可以使用splitjoin這裏:

>>> ' '.join(templist.get_text().split()) 
'"C Space" "802 white avenue" "xyz 123" "Lima"' 
+0

感謝您的回答。 –

1

你可以玩的.get_text()參數:

In [4]: elm = soup.select_one(".content") 

In [5]: print(elm.get_text(strip=True, separator=" ")) 
"C Space" "802 white avenue" "xyz 123" "Lima" 
+0

感謝您的回答。 –