python - 使用Python将JSON对象插入MySQL

标签 python mysql api

我是 python 新手,正在尝试找出如何将一些 JSON 插入 MySQL 表中。

如何使用 Python 将 JSON 对象插入 MySQL?

这是我正在使用的代码

import requests
import urllib.request
import json
import pymysql

con = pymysql.connect(host = 'localhost',user = 'root',passwd = 'root',db = 'micro')
cursor = con.cursor()
url = 'https://api.amazon.com/v1/products(onlineAvailability=true)?pageSize=100&show=upc,sku,salePrice&page=45&callback=JSON_CALLBACK&format=json'
urllib.request.urlopen(url).read()
response = urllib.request.urlopen(url).read()
json_obj = str(response, 'utf-8')

cursor.execute("INSERT INTO bestb (sku, upc, salePrice) VALUES (%s,%s,%s)", (sku, upc, salePrice))
con.commit()
con.close()

print (json_obj)

这是我正在尝试解析的 JSON。

"products": [
    {
      "upc": "715187763623",
      "sku": 1833591,
      "salePrice": 13.99
    },
    {
      "upc": "8809269504036",
      "sku": 26220187,
      "salePrice": 16.99
    }
  ]
})

提前致谢。

最佳答案

使用json.loads(string)将json字符串转换为Python对象。然后你就可以将它用作普通的字典和列表

顺便说一句:您的示例中的 JSON 不正确

response = b'''{"products": [
    {
      "upc": "715187763623",
      "sku": 1833591,
      "salePrice": 13.99
    },
    {
      "upc": "8809269504036",
      "sku": 26220187,
      "salePrice": 16.99
    }
  ]
}'''

json_obj = json.loads(response.decode('utf-8'))

#print(json_obj["products"][0]["upc"])

for product in json_obj["products"]:
    print("upc:", product["upc"])
    print("sku:", product["sku"])
    print("salePrice:", product["salePrice"])
    print('---')
    cursor.execute("INSERT INTO bestb (sku, upc, salePrice) VALUES (%s,%s,%s)", (product["sku"], product["upc"], product["salePrice"]))

关于python - 使用Python将JSON对象插入MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40247392/

相关文章:

python - 检查 .one() 是否为空 sqlAlchemy

python - 隐藏 stdlib 包名称的子包中的绝对导入失败

c++ - ctypes/C++ 段错误访问成员变量

python - 比较数组补丁的最快方法是什么?

sql - 如何从具有相同表和字段名称的不同数据库中选择字段

java - 删除空的变更列表 Perforce Java API

mysql - 如果第二个表没有匹配信息,如何连接两个表

python - 导入错误: No module named authentication

api - 监控 REST API 的最佳方式是什么?

xml - Booking.com酒店管理API