PythonでHTTP経由でタブ区切りファイルをインポートする作業をしています。PythonからMongoDBへの未知のエンコーディングでファイルをインポートする
行のデータをMongoDBに挿入する前に、文字列からスラッシュ、ティック、引用符を削除します。
データの符号化は、MongoDBのは私に例外をスローしているものは何でも:
bson.errors.InvalidStringData: strings in documents must be valid UTF-8
だから、この問題を解決するための努力で、私は早く私ができるようにしたいやった読書からunicode()関数を使用して、行のデータをUnicodeに変換します。また、私は、最初のパラメータとしてのデコード()関数を渡し、「ユニコード」を呼び出して試してみましたが、エラー受信:私は、このようなスラッシュを置き換えとしての私の文字列操作を行うことができ、そこから
LookupError: unknown encoding: unicode
を、ダニ、および引用符。その後、データをMongoDBに挿入する前に、str.encode( 'utf-8')関数を使用してUTF-8に変換してください。
問題:Unicodeに変換するときに、私はこのエラーでエラー
UnicodeDecodeError: 'ascii' codec can't decode byte 0x93 in position 1258: ordinal not in range(128)
を受け付けております、私は継続する場所を正確にはわかりません。
私の質問は、ファイルのエンコードを知らなくてもデータを正常にインポートし、UTF-8を必要とするMongoDBに挿入するにはどうすればいいですか?
ありがとうございます!
なぜこれがタグ付けされた "CSV" this articleを読んでみてください! –
しかし、あなたは「HTTPでタブ区切りのファイルをインポートする」と言っています...「CSV」はどこにフィットしていますか? –