Я новичок в SQL и Python, так что терпите меня! Я пытаюсь импортировать файл json из API на сервер MySQL, сначала создав таблицу на Python. Вот что я пробовал:
import mysql.connector
import json
db = mysql.connector.connect(host = 'localhost',
user = 'root',
passwd = 'password',
db = 'database')
cur = db.cursor()
with open ('C:/Users.../file.json') as json_file:
data = json.load(json_file)
for p in data['timeseries']:
print('timestamp:'+ ['timestamp'])
print('pct_diff:' + ['pct_diff'])
print('')
cursor.execute(
"""
CREATE TABLE 'covid_traffic_LA'.'belair'
('timestamp' VARCHAR(30) NULL, 'pct_diff' DOUBLE NULL)
"""
)
with open('data.txt') as json_file:
data = json.load(json_file)
for p in data['people']:
print('Name: ' + p['name'])
print('Website: ' + p['website'])
print('From: ' + p['from'])
print('')
db.close()
Когда я запускаю это, моя первая ошибка возникает, когда в строке 6 указано db = 'database'. Я удостоверился, что установил правильную базу данных, которую назначил на * 1018. * workbench, но Python выдает NotSupportedError:
NotSupportedError Traceback (most recent call last)
<ipython-input-48-454293f91f8b> in <module>
5 user = 'root',
6 passwd = 'password',
----> 7 db = 'database')
8 cur = db.cursor()
9
NotSupportedError: Authentication plugin 'caching_sha2_password' is not supported
Я также не знаю, как написать цикл for; Я хочу получить метку времени и pct_diff из API (ie. https://adms.usc.edu/api/insights/coronavirus/alhambra).
Любая помощь будет принята с благодарностью!