我正在使用Python通过HTTP导入一个制表符分隔的文件。
在将行数据插入MongoDB之前,我会从字符串中删除斜杠、引号和引号。
无论数据的编码是什么,MongoDB都会抛出异常:
bson.errors.InvalidStringData: strings in documents must be valid UTF-8
为了解决这个问题,根据我所读的内容,我希望尽快地使用unicode()函数将行数据转换为Unicode。此外,我尝试调用decode()函数并将"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中?
非常感谢!