Tukar python json ke kamus dan simpan dalam mysql
代言
代言 2017-06-22 11:51:32
0
3
1057
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()

Saya boleh mengendalikan deposit seperti ini, tetapi saya tidak tahu cara menambah kunci
Cara melakukannya seperti berikut 2017-01-02": {"16777216": { Kedua-dua kunci ini disimpan dalam mysql bersama-sama dengan id medan dan nama pengguna

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

Kamus disimpan dalam mysql

Saya telah menggunakannya

代言
代言

membalas semua(3)
習慣沉默

a={xxxx}

Adakah anda mahu ini?

小葫芦
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

Hanya gunakan gelung untuk mengeluarkan data yang anda perlukan dan masukkannya ke dalam pangkalan data
Kod berikut hanya boleh mengendalikan kes yang paling mudah

#*--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)

Selain itu, apa yang anda berikan json nampaknya tidak begitu betul. .
jalankan kod

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan