2015-06-18 40 views
0

我正在尋找可能性來剝離使用美麗的湯分析文本的html標籤和空白空間。問題是我無法將這兩者結合起來。結合剝離白色空間和html標籤

這裏是整個腳本:

# -*- coding: utf-8 -*- 

from urllib2 import urlopen 
from bs4 import BeautifulSoup as bs 

word = "Drop" 
url = ('http://civil.ge/eng/category.php?id=10') 
soup = bs(urlopen(url).read()) 
titz = soup.find("div", {"class": "archtype_category_block"}) 

for t in titz.find_all('div', {'class': 'archive_type_article_title'}): 
    if word in t.encode('utf-8').strip(): 
     print t.prettify() 

結果與prettify()是:

<div class="archive_type_article_title"> 
Prosecutors Drop Objection to Release of Ex-MoD Officials from Pretrial  Detention 
</div> 

get_text()我弄乾淨的文字,有很多的空白之前和之後。任何解決方案?

謝謝!

回答

1

我使用Python 3並且無法重現您的間距問題。所以也許這是一個答案!

我會將print t.prettify()更改爲print t.prettify().join(mystring.split()),看看是否可以解決您的問題。

而且,你的代碼將只獲得第archtype_category_block,也許這是你想要的,但如果你希望所有的人,你必須改變titz = soup.find("div", {"class": "archtype_category_block"})for titz in soup.find_all("div", {"class": "archtype_category_block"}):

+0

謝謝回答。 'join()'產生'TypeError:'NoneType'對象不可調用。 – ikechi