cx_Freeze 打包以後PyQt webview 產生亂碼
之前因為接觸 Anki 以後,發現了 Anki 是用 Python 寫出來的。
據說Python比較貼近人類語言,因此比較簡單易學。
因此決定把Python 當作是我踏入 coding 的程式語言,學了一年以來,總算是明白了一些程式邏輯,也開始寫些小程式當作練習。
用PyQt 的QWebView 顯示外部網頁,在邊寫邊測試的時候,一切正常。
用cx_Freeze 打包後,中文網頁竟然變亂碼,把原本的big5 編碼用 cp1252 來編,
查了網路上的資料原本以為設定了
弄了半天,原來只要在
並把
同理適用於PySide
參考網頁:解决py2exe打包pyside后webview产生的中文乱码问题 | YQ
據說Python比較貼近人類語言,因此比較簡單易學。
因此決定把Python 當作是我踏入 coding 的程式語言,學了一年以來,總算是明白了一些程式邏輯,也開始寫些小程式當作練習。
用PyQt 的QWebView 顯示外部網頁,在邊寫邊測試的時候,一切正常。
用cx_Freeze 打包後,中文網頁竟然變亂碼,把原本的big5 編碼用 cp1252 來編,
查了網路上的資料原本以為設定了
websettings2 = self.webView_2.settings()
websettings2.setDefaultTextEncoding("Big5")
以後就會恢復正常,結果一點都沒改善弄了半天,原來只要在
app = QApplication(sys.argv)
後面加上app.Encoding(QApplication.UnicodeUTF8) utfcodec = QTextCodec.codecForName("UTF-8") QTextCodec.setCodecForTr(utfcodec) QTextCodec.setCodecForLocale(utfcodec) QTextCodec.setCodecForCStrings(utfcodec)
並把
C:\Python27\Lib\site-packages\PyQt4\plugins\codecs
複製到打包出來的目錄下就好了同理適用於PySide
參考網頁:解决py2exe打包pyside后webview产生的中文乱码问题 | YQ
留言
張貼留言