別のソフトウェア プログラムから Excel xml ファイルにインポートされた文字列のリストを読み込んでいます。Excelファイルのエンコーディングが何であるかはわかりませんが、そのエンコーディングを使用しようとすると多くのエラーが発生するため、windows-1252ではないことは確かです。
今私を悩ませている特定の単語は、「Zmysłowska、Magdalena」です(「l」は標準の「l」ではなく、スラッシュが含まれていることに注意してください)。
私はいくつかのことを試しましたが、ここではそのうちの 3 つについて言及します。
(1)
page = unicode(page, "utf-8")
page = unicodedata.normalize("NFKD", page)
page = page.encode("utf-8", "ignore")
Output: Zmys\xc5\x82owska, Magdalena
Output after print statement: Zmysłowska, Magdalena
(2)
page = unicode(page, "utf-8")
page = unicodedata.normalize("NFKD", page)
Output: Zmys\u0142owska, Magdalena
Output after print statment: Zmysłowska, Magdalena
Note: this is great, but I need to encode it back to utf-8 before putting the string into my db. When I do that, by running page.encode("utf-8", "ignore"), I end up with Zmysłowska, Magdalena again.
(3) 何もしない (正規化なし、デコードなし、エンコードなし)。文字列が入ってくると、すでに utf-8 になっているようです。ただし、何もしないと、文字列は次の出力で終了します。
Output: Zmys\xc5\x82owska, Magdalena
Output after print statement: Zmysłowska, Magdalena
この文字列を utf-8 に変換する方法はありますか?