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

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

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

python 复制代码
pip install pika

实现代码如下:

python 复制代码
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()
相关推荐
geovindu5 分钟前
python: Breadth First Search Algorithm and Depth First Search Algorithm
开发语言·后端·python·算法·搜索算法
程序员果子9 分钟前
CrewAI :当 Agent 学会团队协作
人工智能·git·python·多智能体·agent框架
玉鸯10 分钟前
向量检索不是记忆:Agent 记忆的三层进化
python·agent
大模型码小白11 分钟前
Java 部署:Jenkins Pipeline 构建 Java 项目(自动化)
java·人工智能·python·机器学习
paeamecium23 分钟前
【PAT甲级真题】- Kuchiguse (20)
数据结构·c++·python·算法·pat考试·pat
向夏威夷 梦断明暄25 分钟前
从架构特点到功能缺陷,重新认识分析型分布式数据库
数据库·分布式·架构
满怀冰雪1 小时前
09-使用 paddle.nn 构建第一个多层感知机
python·深度学习·神经网络·paddle
小大宇2 小时前
python sqlalchemy 案例
开发语言·python
Ulyanov2 小时前
雷达导引头仿真中的坐标系——从惯性系到量测角
开发语言·python·算法·系统仿真·雷达信号处理·雷达导引头
codeboss2 小时前
做网页变更监控,我在“降噪”上踩过的 7 个坑
爬虫·python