Convertissez python json en dictionnaire et stockez-le dans MySQL
代言
代言 2017-06-22 11:51:32
0
3
1098
d={
    "state": "ok",
    "errmsg": "",
    "data": {
               "id": 1,
                "username": '李元霸'
            }
        }
        }
        }
        for i in d['data']:
           conn = pymysql.connect(host='localhost', port=3306, user='root',         passwd='123456', db='test', charset='utf8')
        cursor = conn.cursor()
        tsql = "insert into test1(id,name)values(%s,'%s')" % (i['id'],i['username'])
        print(tsql)
        cursor.execute(tsql)
        conn.commit()
        conn.close()

Je peux gérer ce type de dépôt, mais je ne sais pas comment ajouter la clé
Comment procéder comme suit 2017-01-02": {"16777216": { Ces deux clés sont stockées dans MySQL avec les champs identifiant et nom d'utilisateur

.
{
    "state": "ok",
    "errmsg": "",
    "data": {
        "2017-01-02": {
            "16777216": {
               "id": 1,
                "username": '李元霸'
            }
        },
        "2017-01-06": {
            "16777456": {
                "id": 2,
                "username": '陈坤'
            }
        },
    }
}

Dictionnaire stocké dans MySQL

Je l'ai utilisé

代言
代言

répondre à tous(3)
習慣沉默

a={xxxx}

Tu veux ça ?

小葫芦
d = {
    "state": "ok",
    "errmsg": "",
    "data": {
        "2017-01-02": {
            "16777216": {
               "id": 1,
                "username": '李元霸'
            }
        },
        "2017-01-06": {
            "16777456": {
                "id": 2,
                "username": '陈坤'
            }
        },
    }
}

for k, v in d['data'].iteritems():
    number = v.keys()[0]
    print k, number, v[number]['id'], v[number]['username']
学习ing

Utilisez simplement une boucle pour extraire les données dont vous avez besoin et les insérer dans la base de données
Le code suivant ne peut gérer que le cas le plus simple

#*--encoding: utf8--*

import json
    
string = '''{
    "state": "ok",
    "errmsg": "",
    "data": {
        "2017-01-02": {
            "16777216": {
               "id": 1,
                "username": "李元霸"
            }
        },
        "2017-01-06": {
            "16777456": {
                "id": 2,
                "username": "陈坤"
            }
        }
    }
}'''

ret  = json.loads(string)
data = ret['data']

for date in data.keys():
    arr = []
    arr.append(date)
    info = data[date]
    arr.append(info.keys()[0])
    arr.append(info.values()[0]['id'])
    arr.append(info.values()[0]['username'])
    print(arr)

D’ailleurs, ce que tu as donné json ne semble pas très correct. .
exécuter le code

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal