首页 > 数据库 >如何通过Python将JSON格式文件导入redis?

如何通过Python将JSON格式文件导入redis?

时间:2023-05-27 15:13:14浏览次数:51  
标签:Python redis Redis JSON 格式文件 json 键值 import

摘要:如果希望将 JSON 文件导入到 Redis 中,首先要做的就是连接到 redis 服务。

本文分享自华为云社区《Python将JSON格式文件导入 redis,多种方法》,作者: 梦想橡皮擦 。

在导入前需要先确定你已经安装 Redis,并且可以启动相关服务。

windows 上启动 redis 的命令是 redis-server.exe redis.windows.conf,效果图如下:

使用 Python 连接 redis

如果希望将 JSON 文件导入到 Redis 中,首先要做的就是连接到 redis 服务,实现步骤如下所示。

安装 redis 与 导入

安装 redis 库

pip install redis

导入 redis 库

import redis

使用代码连接 Redis

通过 redis 库的 Redis 类连接 Redis 服务器。

import redis
r = redis.Redis(host='localhost', port=6379, db=0)
print(r)

连接到本地 Redis 服务器,并使用默认端口 6379,连接到数据库 0,这里建议使用 redis desktop 工具同步进行连接测试。

写入键值

连接成功后,可以使用 Redis 的命令来操作数据,例如设置键值对:

import redis
r = redis.Redis(host='localhost', port=6379, db=15)
r.set('name', '梦想橡皮擦')
print(r)

可以在可视化工具中查看到数据已经写入。

获取键值

r.get('name')

基础准备好,接下来就将 JSON 文件一次性的写入到 redis 中。

操作 JSON 文件写入 redis

首先使用 json.load() 方法读取 JSON 文件,首先看一下 JSON 文件内容。

JSON 最外层是一个列表,其中每一个元素都是对象,我们需要将每个对象都插入到 redis 中,形成 使 Redis 的哈希表。

完整代码如下所示:

import redis
import json
r = redis.Redis(host='localhost', port=6379, db=15)
with open('travel.json', 'r',encoding='utf-8') as file:
    data = json.load(file)
for item in data:
 r.lpush('travel', json.dumps(item))

先看一下插入之后的结果。

上述代码是将 JSON 文件中的每一项都转换为字符串,然后以 lpush 方式插入到队列的左侧,也可以使用 rpush 进行插入。

如果希望以键值对形式进行插入,需要使用 hset() 方法,参考代码如下所示。

import redis
import json
r = redis.Redis(host='localhost', port=6379, db=15)
with open('travel.json', 'r',encoding='utf-8') as file:
    data = json.load(file)
for index,item in enumerate(data):
 r.hset('travel', index, json.dumps(item))

可以看到此时 redis 中存储了 key 和 value 。

r.hset(name, key, value) 方法是 Redis 哈希表命令之一,用于将指定的键和值添加到 Redis 哈希表中。

  • 参数说明如下:
    • name:哈希表的名称。
    • key:要添加的键。
    • value:要添加的值。

它返回一个整数,表示添加的键值对是否是该哈希表的新键值对。

如果返回 1,表示新键值对已添加;

如果返回 0,表示键已经存在,并且值已被更新。

 

点击关注,第一时间了解华为云新鲜技术~

标签:Python,redis,Redis,JSON,格式文件,json,键值,import
From: https://www.cnblogs.com/huaweiyun/p/17436761.html

相关文章

  • python循环怎么执行不了
    在Python编程中,循环是一种重要的语句类型,可以让我们对一组数据进行重复的操作。如果您的循环无法正常执行,可能会有多种原因。下面是一些可能导致循环无法正常执行的原因和解决方法:循环条件不满足:循环语句的执行需要满足一定的条件,如果条件不满足,循环就不会执行。请检查您的循......
  • Python相关性分析代码
    进行相关性分析的代码主要涉及数据处理和统计分析。以下是使用Python进行相关性分析的一般步骤:1.导入必要的库:importpandasaspdimportnumpyasnpimportseabornassnsimportmatplotlib.pyplotasplt2.读取数据:将你的数据加载到PandasDataFrame中。data=pd.read_c......
  • 01python环境安装 conda + vscode
    conda安装win10安装1、从官网下载python版本对应的miniconda;2、一直Next;不用配置环境变量;修改安装路径,因为后面创建的虚拟环境是放在安装目录;3、安装后,打开AnacondaPrompt即可使用;4、配置镜像(国内下载太慢,还容易卡住)Windows用户无法直接创建名为.condarc的文件,可先生成......
  • Python项目如何打包?
    在Python中,你可以使用一些工具和技术来打包你的项目,以便于分发和部署。以下是一种常见的方法:1.创建项目结构:首先,你需要组织好你的项目结构。一个常见的做法是创建一个包含项目代码的文件夹,并在其中包含一个名为__init__.py的文件,以将其标识为Python包。2.编写setup.py文件:s......
  • Python项目如何打包?
    在Python中,你可以使用一些工具和技术来打包你的项目,以便于分发和部署。以下是一种常见的方法:1.创建项目结构:首先,你需要组织好你的项目结构。一个常见的做法是创建一个包含项目代码的文件夹,并在其中包含一个名为__init__.py的文件,以将其标识为Python包。2.编写setup.py文件:s......
  • 分享Python采集77个tab标签,总有一款适合您
    Python采集的77个tab标签下载链接:https://pan.baidu.com/s/1GwIU-q4_OpJKzgOKqMf16g?pwd=u6uj提取码:u6ujjs仿当当网tab选项卡切换特效vue.js圆形tab选项卡标签图文切换效果移动端选项卡切换展示echarts数据图表代码jQuery选项卡中嵌套选项卡切换效果jQuerytab选项卡产品列表切换......
  • 分享Python采集40个时间日期,总有一款适合您
    Python采集的40个时间日期下载链接:https://pan.baidu.com/s/1yTUJNe6eFzKcJGsTnJADpA?pwd=jyoi提取码:jyoi简洁易用的JavaScript万年历界面支持节假日高亮显示的时间日期日历表懒人原生format方法格式化Date时间日期支持时、分的日历时间插件效果jQuery简洁版日历插件效果包含节假......
  • redis
    常用类型list  有序使用:队列列表类型可以使用rpush实现先进先出的功能,同时又可以使用lpop轻松的弹出(查询并删除)第一个元素,所以列表类型可以用来实现消息队列基于rpush+blpophash使用:Hash类型大家应该都不陌生,他就是一个键值对集合,Hash相当于一个string类型的key和......
  • Python函数
    Python中的函数是可重用的代码块,用于执行特定的任务或操作。函数通过接受输入(参数)并返回输出(返回值)来完成其功能。以下是一个简单的Python函数的例子:defgreet(name):"""打招呼的函数"""print("Hello,"+name+"!")#调用函数greet("Alice")在上面的例子中,我们定......
  • Python_手动下载Chrome驱动找不到对应版本,尝试pip自动下载对应版本的驱动,问题解决
    pipinstallwebdriver-manager 验证是否成功代码如下:fromseleniumimportwebdriverdriver=webdriver.Chrome()url='https://www.csdn.net/'driver.get(url)driver.maximize_window()验证成功......