相关疑难解决方法(0)

从字符串中删除每个非utf-8符号

我有大量的文件和解析器.我要做的是剥离所有非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 encode mongodb

39
推荐指数
3
解决办法
6万
查看次数

如何在Python中编码(utf8mb4)

如何在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应用程序.请帮忙!

python mysql encoding utf-8

8
推荐指数
2
解决办法
2万
查看次数

标签 统计

python ×2

encode ×1

encoding ×1

mongodb ×1

mysql ×1

utf-8 ×1