解决ValueError: Nicht abgeschlossene Zeichenfolge beginnt bei: Zeile 1, Spalte 237 (Zeichen 236)

Der Grund für den Fehler ist:

json.loads(string)

Der Inhalt in string liegt nicht im Standard-JSON-Format vor

Ich verwende json.dumps und json.loads paarweise, wie zum Beispiel:

str_dict = {
    
    "192.244.135.136:3306:error": "can not find backup file /database/mysql/xtrabackup/xtrabackup_3306/207/192.221.40.94/full_207.tar.gz", "192.244.135.135:3306:error": "restore failed: exit status 255", "192.244.135.135:3306": 0, "192.244.135.136"}

string =  json.dumps(str_dict)
# string的值存入数据库中,在数据库中查询是发现,string的值是
'{"192.244.135.136:3306:error": "can not find backup file /database/mysql/xtrabackup/xtrabackup_3306/207/192.221.40.94/full_207.tar.gz", "192.244.135.135:3306:error": "restore failed: exit status 255", "192.244.135.135:3306": 0, "192.244.135.136'
# 原因是数据库里字段的长度设置少了,导致string超长了,存入mysql的时候被自动截取了,而没有报错,所以再读这个值的时候就报错了
json.loads(string)  # 报错了,如标题

Es ist einfach, die Ursache des Problems zu ermitteln: Erhöhen Sie entweder die Speicherlänge der Datenbank oder begrenzen Sie die Speicherlänge.

Supongo que te gusta

Origin blog.csdn.net/dqchouyang/article/details/128304912
Recomendado
Clasificación