如何通过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访问的数据存储到字符串中? [关闭]

如何将该Python爬取的数据存入MySQL中,数据库表带id

考虑到我的图像的链接存储在 MySQL 数据库中,如何通过 php 显示存储在文件夹中的图像