我有大量的文件和解析器.我要做的是剥离所有非utf-8符号并将数据放入mongodb.目前我有这样的代码.
with open(fname, "r") as fp:
for line in fp:
line = line.strip()
line = line.decode('utf-8', 'ignore')
line = line.encode('utf-8', 'ignore')
Run Code Online (Sandbox Code Playgroud)
不知怎的,我仍然得到一个错误
bson.errors.InvalidStringData: strings in documents must be valid UTF-8:
1/b62010montecassianomcir\xe2\x86\x90ta0\xe2\x86\x90008923304320733/290066010401040101506055soccorin
Run Code Online (Sandbox Code Playgroud)
我不明白.有一些简单的方法吗?
UPD:似乎Python和Mongo不同意Utf-8 Valid字符串的定义.
如何在Python中用ut8mb4编码?
我有两组数据:数据我将从Parse迁移到我的新MySQL数据库,而数据将继续(仅与我的新数据库对话).我的数据库是utf8mb4,以存储表情符号和重音字母.
当我在python脚本中时,第一组数据只显示正确(当涉及表情符号和重音符号时):
MySQLdb.escape_string(unicode(xstr(data.get('message'))).encode('utf-8'))
Run Code Online (Sandbox Code Playgroud)
当从PHP中读取MySQL数据库时:
$row["message"] = utf8_encode($row["message"]);
Run Code Online (Sandbox Code Playgroud)
当我不包括该utf8_encode($row["message"])部分时,第二组数据仅正确显示(当涉及表情符号和重音时).我正在尝试协调这些,以便将两组数据正确地返回到我的iOS应用程序.请帮忙!