我在嘗試將UTF-8字符串轉換爲unicode時遇到了問題。我收到錯誤。Python Unicode UnicodeEncodeError
UnicodeEncodeError: 'ascii' codec can't encode characters in position 73-75: ordinal not in range(128)
我想在一個try
/except
塊包裹這一點,但那麼谷歌是給我這是一條線一個系統管理員的錯誤。 有人可以建議如何捕獲此錯誤並繼續。
乾杯,約翰。
- 完整的錯誤 -
Traceback (most recent call last):
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/webapp/__init__.py", line 501, in __call__
handler.get(*groups)
File "/Users/johnb/Sites/hurl/hurl.py", line 153, in get
self.redirect(url.long_url)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/webapp/__init__.py", line 371, in redirect
self.response.headers['Location'] = str(absolute_url)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 73-75: ordinal not in range(128)
比較遺憾的是沒有工作。 這是我現在的代碼。因爲我調用self.redirect,字符串正在編碼並導致錯誤,因爲在這種情況下,URL實際上有一個「å」。如果發生此錯誤,那麼我將網址寫入頁面,並使用META-REFRESH標記,讓瀏覽器在幾秒鐘後重定向 self.redirect(url.long_url) – 2009-07-03 02:45:11
@zdmytriv:unicode(absolute_url)?不應該在某處提到UTF-8嗎? – 2009-07-03 02:53:05