当前位置: 首页 > article >正文

python3实现定时拉取rabbitmq队列里面的数据,并输出到文件中。

        使用pika,一个Python RabbitMQ客户端库,结合Python的datetimejson库来实现定时从RabbitMQ队列中拉取数据,并将数据输出到按当天日期动态生成的文件中。

        首先,确保您已经安装了 pika 库。如果尚未安装,可以使用以下命令进行安装:

pip install pika

         实现代码如下:

import pika
import datetime
import json

# RabbitMQ连接参数(替换为实际信息)
credentials = pika.PlainCredentials('your_username', 'your_password')
connection_params = pika.ConnectionParameters('localhost', credentials=credentials)
queue_name = 'your_queue_name'  # 替换为队列名

# 建立RabbitMQ连接和信道
connection = pika.BlockingConnection(connection_params)
channel = connection.channel()

# 声明队列
channel.queue_declare(queue=queue_name)

# 生成当天日期的文件名
current_date = datetime.datetime.now().strftime("%Y-%m-%d")
output_file = f"data_{current_date}.json"

# 拉取队列中的数据并写入文件
with open(output_file, 'a') as file:
    while True:
        method_frame, properties, body = channel.basic_get(queue=queue_name, auto_ack=True)
        if method_frame:
            data = json.loads(body.decode('utf-8'))
            file.write(json.dumps(data) + '\n')
        else:
            break

# 关闭连接
connection.close()


http://www.kler.cn/a/157748.html

相关文章:

  • 组网技术-路由器
  • Java三种代理模式:静态代理、动态代理和CGLIB代理
  • 在Ubuntu上搭建RiscV交叉编译环境
  • 【产品经理】业务问题的诊断:由简入繁,渐进成长
  • C 语言之json库的使用
  • 西南科技大学模拟电子技术实验七(集成运算放大器的非线性应用)预习报告
  • Hadoop进阶学习---HDFS分布式文件存储系统
  • 使用JDBC连接和操作数据库以及myBatis初级入门
  • MySQL笔记-第01章_数据库概述
  • Node 后端 框架 Nest js鉴权
  • Ruby和HTTParty库下载代码示例
  • Python高级数据结构——线段树(Segment Tree)
  • Stable Diffusion WebUI常用Tag收集
  • java FTP客户端获取文件流假死问题
  • Course2-Week2-神经网络的训练方法
  • 【Spark基础】-- 理解 Spark shuffle
  • 游戏mod制作--引擎与解包
  • Java 8 中 ReentrantLock 与 Synchronized 的区别
  • Failed to resolve org.junit.platform:junit-platform-launcher:1.9.3
  • C语言之if语句在生活中的应用