python实现将json多行数据传入到mysql中使用

yipeiwu_com7年前Python基础

将json多行数据传入到mysql中使用python实现

表需要提前创建,字符集utf8 如果不行换成utf8mb4

import json
import pymysql

def reviewdata_insert(db):
  with open('data.txt', encoding='utf-8') as f:
    i = 0
    while True:
      i += 1
      print(u'正在载入第%s行......' % i)
      try:
        lines = f.readline() # 使用逐行读取的方法
        review_text = json.loads(lines) # 解析每一行数据
        result = []
        result.append((review_text['id'], review_text['created_at'], review_text['content'],
                review_text['source'], review_text['reports_count'], review_text['comments_count'],
                review_text['attitudes_count']))
        print(result)

        inesrt_re = "insert into review(id,created_at,content,source,reports_count,comments_count,attitudes_count) values(%s,%s,%s,%s,%s,%s,%s)"
        cursor = db.cursor()
        cursor.executemany(inesrt_re, result)
        db.commit()
      except Exception as e:
        db.rollback()
        print(str(e))
        break


if __name__ == "__main__": # 起到一个初始化或者调用函数的作用
  db = pymysql.connect("192.168.67.41", "root", "123456", "data", charset='utf8')
  cursor = db.cursor()
  reviewdata_insert(db)
  cursor.close()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python中as用法实例分析

本文实例讲述了python中as用法。分享给大家供大家参考。具体分析如下: import some # some 为一个模组 如果想要改变被导入模组在当前模组中的名称,而不是sys...

用Python操作字符串之rindex()方法的使用

 rindex()方法返回所在的子str被找到的最后一个索引,可选择限制搜索的字符串string[beg:end] 如果没有这样的索引存在,抛出一个异常。 语法 以下是rind...

pandas中去除指定字符的实例

pandas中去除指定字符的实例

例表: 假如想要去掉表中的‘#',‘;'而且以‘#'和‘;'为分割线切割数据: #将dfxA_2的每一个分隔符之间的数据提出来 col1=dfxA_2['travel_seq']...

python获取外网IP并发邮件的实现方法

第一步:通过ip138来爬取外网ip 第二步:通过python的smtplib模块和email来发送邮件,具体用法去网上搜索, 下面是代码示例: #!/usr/bin/env pyt...

浅析Python语言自带的数据结构有哪些

Python作为一种脚本语言,其要求强制缩进,使其易读、美观,它的数据类型可以实现自动转换,而不需要像C、Java那样给变量定义数据类型,使其编写非常方便简单,所以广受大家的欢迎。 现如...