2013-11-04 27 views
0

我想下面的網站
http://www.rasekhoon.net/media/3882/page1/
HTML的代碼,我用下面的代碼如何調試urllib2和阿拉伯語言的錯誤?

file = urllib2.urlopen("http://www.rasekhoon.net/media/3882/page1/") 
string= file.read() 

得到它,當我打印

<div class="header" title="ظپط§غŒظ„ظ‡ط§غŒ ط³ط¹غŒط¯ ط­ط¯ط§ط¯غŒط§ظ†/ط³ط§ظ„ 1389 ط¨ط§ ظ…ظˆط¶ظˆط¹ 'ظ…غŒظ„ط§ط¯ ط­ط¶ط±طھ ط²ظ‡ط±ط§ ط¹ظ„غŒظ‡ط§ ط§ظ„ط³ظ„ط§ظ…'"> 
     <em>ظپط§غŒظ„ظ‡ط§غŒ ط³ط¹غŒط¯ ط­ط¯ط§ط¯غŒط§ظ†/ط³ط§ظ„ 1389 ط¨ط§ ظ…ظˆط¶ظˆط¹</em>&nbsp;&nbsp; 
     ظ…غŒظ„ط§ط¯ ط­ط¶ط±طھ ط²ظ‡ط±ط§ ط¹ظ„غŒظ‡ط§ ط§ظ„ط³ظ„ط§ظ… 
    </div> 
    <div class="content richcontent" style="display:none;"> 

我想下面的結果

<div class="header" title="فایلهای سعید حدادیان/سال 1389 با موضوع 'مناجات'"> 
     <em>فایلهای سعید حدادیان/سال 1389 با موضوع</em>&nbsp;&nbsp; 
     مناجات 
    </div> 
    <div class="content richcontent" style="display:none;"> 

我該如何修復它?

+0

「我該如何修復它?」問題很不明顯。 – Marcin

+0

@Marcin:我懷疑輸出是UTF-8的Latin-1解釋。 –

+0

@ Marcin ok我更新了我的問題 –

回答

3

您正在將編碼數據打印到控制檯,而不更改編碼。

內容類型標題聲明數據以UTF-8編碼,但是您將使用拉丁編解碼器將其打印到控制檯。

解碼數據爲Unicode第一:

response = urllib2.urlopen("http://www.rasekhoon.net/media/3882/page1/") 
html = file.read().decode('UTF8') 

可能無法打印結果Unicode值到控制檯;如果它不能編碼特定的碼點,那麼你會得到UnicodeEncode例外。這不是內容問題,而是您的控制檯。

+0

that thannks thannks –