如何通过python将数据存储在MySQL数据库中
Posted
技术标签:
【中文标题】如何通过python将数据存储在MySQL数据库中【英文标题】:How to store data in MySQL database via python 【发布时间】:2018-05-10 03:57:29 【问题描述】:这是我目前编写的脚本。我发现的第一个障碍是我无法安装 mysqldb 包 - 也许我可以使用不同的模块?
import soundcloud
import pandas as pd
from pandas import DataFrame
import MySQLdb
client =
soundcloud.Client(client_id='696b5ca70f5401cc46c9011c78831877')
userId = '110652450'
tracks = client.get('/users/'+userId+'/tracks')
data = []
for x in tracks:
data.append('Track_Name':x.title,'plays':str(x.playback_count))
df = pd.DataFrame(data)
database = MySQLdb.connect (host="127.0.0.1",user ="root",passwd="XXX",db="soundcloudstore")
cursor = database.cursor()
query = """INSERT INTO Tracks (Track_Name, Plays) VALUES (%s,%s)"""
for x in df:
Track_Name = df[['Track_Name']].value
Plays = df[['plays']].value
values = (Track_Name, Plays)
cursor.execute(query, values)
cursor.close()
database.commit()
database.close()
【问题讨论】:
***.com/questions/25865270/… 看到这个安装mysql 感谢 Salmaan,但如果我安装 brew install mysql-connector-c (有效)仍然不允许我使用模块“MySQLdb”。你会推荐一个不同的模块吗? 你是用这个import mysql.connector导入的吗,如果不行,你可以试试其他的。 我不确定我是否理解你所说的,但我也试过:pip install mysql.connector,我收到消息'找不到满足mysql.connector要求的版本(来自版本: ) 没有找到与 mysql.connector' 匹配的分布 dev.mysql.com/doc/connector-python/en/… 【参考方案1】:在此处下载适配器:https://dev.mysql.com/doc/connector-python/en/connector-python-installation.html
那么你会这样使用它:
import mysql.connector
data = []
for x in tracks:
data.append((x.title, str(x.playback_count)))
conn = mysql.connector.connect(user='', password='',
host='',
database='')
cursor = conn.cursor()
q = """INSERT INTO Tracks (Track_Name, Plays) VALUES (%s,%s)"""
cursor.executemany(q, data)
这将使您免于无缘无故加载到数据帧中,并且executemany
已针对插入进行了优化。
【讨论】:
您好鹰,谢谢。如果我运行上面的脚本,我会看到错误“无效语法”,我认为它位于附加部分。你知道我该如何解决它吗? 我刚刚编辑了你可能一直在使用我在编辑之前发布的内容 啊,谢谢!现在我看到“旧”错误消息:没有名为“mysql”的模块有什么想法吗? 是的,你的路径中似乎没有 mysql 不在我的道路上是什么意思?我需要安装另一个模块吗?以上是关于如何通过python将数据存储在MySQL数据库中的主要内容,如果未能解决你的问题,请参考以下文章
[python爬虫] Selenium爬取内容并存储至MySQL数据库
如何通过 python 将 JSON 数据附加到存储在 Azure blob 存储中的现有 JSON 文件?
如何使用javascript将数据存储到mysql数据库中?
MySQL-如何将通过select语句从MySQL访问的数据存储到字符串中? [关闭]