2013-07-17 45 views
3

我使用lxml.html解析html文件並從頁面獲取文本。柏迪現在我其中有一個角色'例如Florian's由於該字符串,而打印輸出我得到回溯TypeError:解碼Unicode不支持python

parent_link_id_text = parent_link_id.xpath('./td[@width="400"]/text()') 
print (SGS_Mid[0]+";"+"External"+";"+str(link_id_num[0])+";"+parent_link_id_text[0]+";"+parent_link_link[0], file = log_file_1) 

UnicodeEncodeError:「ASCII」編解碼器在56-58位置不能編碼字符:在範圍序數不(128)

然後我試圖此

print (SGS_Mid[0]+";"+"PublicFreeUrl"+";"+str(link_id_num[0])+";"+unicode(parent_link_id_text[0],"utf-8")+";"+parent_link_link[0], file = log_file_1) 

和我得到一個回溯:

類型錯誤:解碼Unicode的不支持

我如何可以通過打印用的unicode cahracter字符串解決這個問題?

+0

可以any1建議一個解決方案,以便下列查詢! –

回答

1

不知道這是否是解決您的問題的方法,但也許它會引導您朝着正確的方向發展。

如果沒有看到代碼,您必須真正獲取數據,我會推測並編寫一個程序化的猜測來解決您的問題。

請參見下面的代碼:

import lxml.html as lh 
import urllib2 

url = 'http://loremipsum.net/about.html' 

doc = lh.parse(urllib2.urlopen(url)) 

value = doc.xpath('//p/strong/text()')[0] 

print value 

打印結果:

What is 'lorem ipsum'?

通過閱讀有關網頁上Lorem存有網站,你可以看到文本返回確實有「在它。

我希望這可以幫助你在正確的方向。