您的位置:首页 > 数据库 > Mongodb

使用Python将MongoDB中的数据转存到MySQL中的一次尝试

2017-04-08 16:28 573 查看
打算把整个项目上传到 github 上,但是数据啥的都保存在 MongoDB 中,因为没找到把 MongoDB 导出到 sql 脚本的方式,遂决定将数据从 Mongo 中提取出来,再放到 MySQL 中,这样就可以导出 sql 脚本文件,或者是 Excel 文件啦!

#coding=utf-8
import pymongo
import MySQLdb

#--------------------------数据库启动函数------------------------------
def start_MySQL():
conn = MySQLdb.connect(
host='localhost',
port = ???,
user='???',
passwd='???',
db ='temple_comment_table',
charset='gbk')
cur = conn.cursor()
myConn_list = [conn, cur]
return myConn_list
#---------------------------------------------------------------------

#--------------------------关闭数据库--------------------------------
def close_MySQL(cur,conn):
cur.close()
conn.commit()
conn.close()
#------------------------------------------------------------------

if __name__ == "__main__":
client = pymongo.MongoClient('localhost', 27017)
TempleSpider = client['TempleSpider']
temple_comment_collect = TempleSpider['temple_comment_collect']

myConn_list = start_MySQL()
cur = myConn_list[1]
conn = myConn_list[0]

sqli = "insert into temple_comment values(%s,%s,%s)"

for temple in temple_comment_collect.find():
try:
cur.execute(sqli, (temple['data_source'],
temple['temple_name'],
temple['temple_comment']))

print(temple)
except:
pass

close_MySQL(cur, conn)


MongoDB



MySQL



因为字符编码的缘故,莫名其妙的丢了 1k+ 的数据 :(

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: