2009-04-07 4 views
1

Django ORMラッパーを使用して、テキストをデータベースに保存します。問題は、このテキストが外部のウェブサイトを掻き集めることによって生成され、何度も間違ったエンコードでリストされているように見えることです。生のバイトを保存したいので、スクラップをやり直すことなく時間が経つにつれてエンコード検出を向上させることができます。しかし、Djangoはすべてがユニコードとして保存されるように思えます。どういうわけか、その周りを回ることはできますか?Djangoで未知のエンコーディングのUnicodeを扱うには?

答えて

1

例えば、base64にエンコードされたデータを保存することができます。または、ブラウザからHTTPヘッダーを分析しようとすると、そこから適切なエンコードを取得する方が簡単かもしれません。

+0

一部のサイトでは、データが誤ってエンコードされるか、ページ全体でエンコードが矛盾します。私は元のデータを保存したいと思っています。しかし、私は戻って正確にそれを見ることができます。 – lacker

1

データを含むファイルを作成します。ファイルへの参照を保持するには、Django models.FileFieldを使用します。

いいえ、大量のI/Oは必要ありません。ファイルが小さければ、2または3のI/Oが追加されます(ディレクトリの読み取り、iノードの読み取り、およびデータの読み取り)。

関連する問題