Python3实现将本地JSON大数据文件写入MySQL数据库的方法

一、准备工作

要将本地JSON大数据文件写入MySQL数据库,需要先做好以下准备工作:

  1. 安装Python3开发环境及必要的包;
  2. 安装MySQL数据库,并创建好对应的表。

二、Python实现将本地JSON大数据文件写入MySQL数据库的步骤

  1. 读取JSON文件内容

使用Python内置的json库,读取本地的JSON大数据文件。代码如下:

import json

with open('data.json', 'r', encoding='utf-8') as file:
    data = json.load(file)
  1. 连接MySQL数据库

使用Python的pymysql库建立与MySQL数据库的连接,并创建一个光标对象。代码如下:

import pymysql

conn = pymysql.connect(host='localhost', port=3306, user='root', password='123456', db='test', charset='utf8')
cursor = conn.cursor()

其中,host为MySQL服务主机地址;port为端口;user为连接用户名;password为连接密码;db为连接的数据库名。

  1. 写入数据

将读取到的JSON数据导入到MySQL数据库中,需要遍历JSON数据,逐条将数据存储到MySQL数据库中。代码如下:

for item in data:
    sql = "INSERT INTO my_table (id, name, age) VALUES ('%s', '%s', '%d')" % (item['id'], item['name'], item['age'])
    cursor.execute(sql)
    conn.commit()

其中,my_table是MySQL中已经创建好的表名,id、name、age是表中的字段名,需与JSON数据对应。循环遍历数据时,通过%s来表示占位符,将JSON数据中的值填充到该占位符中。

  1. 断开与MySQL的连接

完成数据写入后,关闭光标对象和MySQL数据库连接,释放相关资源。代码如下:

cursor.close()
conn.close()

三、示例说明

  1. 示例1

数据集合格式如下:

[
  {
    "id": "1",
    "name": "Tom",
    "age": 18
  },
  {
    "id": "2",
    "name": "Jerry",
    "age": 20
  }
]

读取数据文件data.json中的内容并将数据写入MySQL数据库的my_table表中:

import json
import pymysql

with open('data.json', 'r', encoding='utf-8') as file:
    data = json.load(file)

conn = pymysql.connect(host='localhost', port=3306, user='root', password='123456', db='test', charset='utf8')
cursor = conn.cursor()

for item in data:
    sql = "INSERT INTO my_table (id, name, age) VALUES ('%s', '%s', '%d')" % (item['id'], item['name'], item['age'])
    cursor.execute(sql)
    conn.commit()

cursor.close()
conn.close()
  1. 示例2

数据集合格式如下:

{
  "user1": {
    "id": "1",
    "name": "Tom",
    "age": 18
  },
  "user2": {
    "id": "2",
    "name": "Jerry",
    "age": 20
  }
}

读取数据文件data.json中的内容并将数据写入MySQL数据库的my_table表中:

import json
import pymysql

with open('data.json', 'r', encoding='utf-8') as file:
    data = json.load(file)

conn = pymysql.connect(host='localhost', port=3306, user='root', password='123456', db='test', charset='utf8')
cursor = conn.cursor()

for key in data:
    sql = "INSERT INTO my_table (id, name, age) VALUES ('%s', '%s', '%d')" % (data[key]['id'], data[key]['name'], data[key]['age'])
    cursor.execute(sql)
    conn.commit()

cursor.close()
conn.close()

以上两个示例均是将JSON数据写入MySQL表中,具体代码中的数据读取和插入SQL语句可以根据实际情况作出修改。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python3实现将本地JSON大数据文件写入MySQL数据库的方法 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • 华为平板电脑哪款最好2023

    华为平板电脑哪款最好2023 如果你正在考虑购买一款华为平板电脑,那么可能会被琳琅满目的选择吓到。为了帮助你找到最适合的平板电脑,下面提供了一些选择的建议和将要关注的关键要素。 如何选择最好的华为平板电脑 当考虑购买平板电脑时,以下几个因素是需要考虑的: 1. 大小和重量 这是选择平板电脑最重要的因素之一。有三种主要的屏幕尺寸:8英寸,10英寸和12英寸。8…

    云计算 2023年5月17日
    00
  • [AWS vs Azure] 云计算里AWS和Azure的探究(4)

    云计算里AWS和Azure的探究(4) ——Amazon EC2 和 Windows Azure Virtual Machine   接下来我们来看看Azure VM的创建。Azure里面虚拟机的创建跟AWS比就要简单许多了,配置的东西比较少,创建的过程也相对短一些。 创建虚拟机 首先进入Azure的Management Portal   点击下面的新建按钮…

    云计算 2023年4月11日
    00
  • JavaScript操作元素实例大全

    JavaScript操作元素实例大全 本文将提供一个完整的攻略,包括如何使用JavaScript操作元素实例。以下是详细步骤: 步骤1:获取元素 在使用JavaScript操作元素之前,我们需要先获取元素。可以使用document对象的方法来获取元素。以下是一个示例说明,演示如何获取元素: // 通过id获取元素 const elementById = do…

    云计算 2023年5月16日
    00
  • 国内网站常用的一些 CDN 公共库加速服务小结

    国内网站常用的一些 CDN 公共库加速服务小结 CDN(Content Delivery Network)是一种分布式的网络架构,可以将网站的静态资源(如图片、CSS、JavaScript等)缓存到全球各地的服务器上,从而提高网站的访问速度和稳定性。本文将介绍国内常用的一些CDN公共库加速服务,包括使用方法和示例说明。 1. BootCDN BootCDN是…

    云计算 2023年5月16日
    00
  • JQuery的Ajax跨域请求原理概述及实例

    JQuery是一款优秀的JS框架,可以方便地进行Ajax请求。但是在跨域请求方面,要特别注意相关的规则。 Ajax跨域请求原理概述 跨域请求的定义 所谓跨域请求,是指在发送Ajax请求的过程中,请求的地址和当前页面的地址不在同一个域下。 跨域请求的限制 浏览器出于安全性考虑,限制了Ajax请求所能请求的范围,即同源策略。同源策略限制了Ajax请求只能请求同一…

    云计算 2023年5月17日
    00
  • python微信好友数据分析详解

    Python微信好友数据分析详解 介绍 本攻略旨在引导读者使用Python语言进行微信好友数据分析,包括好友性别、好友地区、聊天记录分析等方面。本文使用Python第三方库itchat及pandas实现对微信好友数据的分析和可视化展示。 准备 在使用本攻略进行微信好友数据分析之前,需要安装好以下软件和包:1. Python 3:可以通过官网下载并安装;2. …

    云计算 2023年5月18日
    00
  • 大数据应用开发流程

    通常将大数据应用开发分为五个步骤:获取、存储、处理、访问以及编制,获取是指获取一些辅助数据,例如来自CRM、生产数据(ODS)的数据,并将其加载入分布式系统(如Hadoop)为下一环节处理做准备。存储是指对分布式文件系统(GFS)或NoSQL分布式存储系统、数据格式)、压缩和数据模型的决策。处理是指将采集的原始数据导入到大数据管理系统,并将其转化为可用于分析…

    2023年4月10日
    00
  • 云计算的三种服务模式(IaaS/PaaS/SaaS)

      云计算主要分为三种服务模式,而且这个三层的分法重要是从用户体验的角度出发的: SaaS:Software as a Service,软件即服务,这层的作用是将应用作为服务提供给客户。 PaaS:Platform as a Service,平台即服务,这层的作用是将开发平台作为服务提供给用户。 IaaS:Infrastructure as a Servic…

    云计算 2023年4月16日
    00
合作推广
合作推广
分享本页
返回顶部