Python实现将数据框数据写入mongodb及mysql数据库的方法

yipeiwu_com6年前Python基础

本文实例讲述了Python实现将数据框数据写入mongodb及mysql数据库的方法。分享给大家供大家参考,具体如下:

主要内容:

1、数据框数据写入mongdb方法

2、数据框数据写入mysql方法

为了以后不重复造轮子,这里总结下,如何把数据框数据写入mysql和mongodb的方法记录下来,省得翻来翻去。下面记录的都是精华。

写入mongodb代码片段(使用pymongo库):

##########################写入mongodb 数据库######################
###########################python操作mongodb数据库
from pymongo import MongoClient
con=MongoClient() ##连接客户端
db = con.Class ##创建数据库
post=db.Classdata ##创建集合
##插入数据(df是数据框)
##循环写入(以字典的方式一条一条插入)
for i in range(0,len(df)):
  u=dict(Class =df.iloc[i,0], Course =df.iloc[i,1],Title=df.iloc[i,7],Section=df.iloc[i,5],Type=df.iloc[i,8], \
      Days=df.iloc[i,2],Time=df.iloc[i,6],Room=df.iloc[i,4],Location=df.iloc[i,3],instructors=df.iloc[i,9],status=df.iloc[i,10])
  print u
  post.insert(u)

写入mysql代码片段(使用pymysql库):

##############################写入mysql数据库#################################
import pymysql
## 加上字符集参数,防止中文乱码
dbconn=pymysql.connect(
 host="127.0.0.1",
 database="cgjr",
 user="root",
 password="12345",
 port=3306,
 charset='utf8'
 )
# 执行sql语句
try:
  with dbconn.cursor() as cursor:
    # 执行sql语句,插入记录
    sql = 'INSERT INTO t_tao_info (num, price, city, shop_name, title,number,link,sale) VALUES (%s, %s, %s, %s, %s,%s,%s,%s)'
    for i in range(0,len(data)):
      print "正在插入数据:" + str(i)
      cursor.execute(sql, (data.iloc[i,0], data.iloc[i,1], data.iloc[i,2],data.iloc[i,3],data.iloc[i,4],data.iloc[i,5],data.iloc[i,6],data.iloc[i,7]))
      # 没有设置默认自动提交,需要主动提交,以保存所执行的语句
      dbconn.commit()
except dbconn.Error, e:
  print "Error %d: %s" % (e.args[0], e.args[1])
  sys.exit(1)
finally:
  dbconn.close()
  print ('数据已插入,插入数据库成功!')

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python常见数据库操作技巧汇总》、《Python+MySQL数据库程序设计入门教程》、《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

浅析python 中大括号中括号小括号的区分

python语言最常见的括号有三种,分别是:小括号( )、中括号[ ]和大括号也叫做花括号{ }。其作用也各不相同,分别用来代表不同的python基本内置数据类型。 1.python中的...

用Python逐行分析文件方法

用于逐行分析文本的代码示例 fileIN = open(sys.argv[1], "r") line = fileIN.readline() while line: [some bi...

Python Pandas 获取列匹配特定值的行的索引问题

Python Pandas 获取列匹配特定值的行的索引问题

给定一个带有列"BoolCol"的DataFrame,如何找到满足条件"BoolCol" == True的DataFrame的索引 目前有迭代的方式来做到这一点: for i in...

python安装模块如何通过setup.py安装(超简单)

python安装模块如何通过setup.py安装(超简单)

有些时候我们发现一些模块没有提供pip install 命令和安装教程 , 只提供了一个setup.py文件 , 这个时候如何安装呢? 步骤 打开cmd 到达安装目录...

Django如何实现网站注册用户邮箱验证功能

Django如何实现网站注册用户邮箱验证功能

我们在很多网站上都可以看到用户注册使用电子邮件激活或启用的方式。也就是说,用户在注册后填写正确的电子邮件地址,接着网站会发送一封启用电子邮件到用户设置的电子邮件的邮箱中,并在邮件中提供一...