pykafka is ok, kafkapython is not ok

本文介绍如何使用PyKafka库连接到Kafka服务器,列出所有topics,并从特定topic中消费数据。代码示例展示了如何设置客户端,获取topic信息,以及如何创建消费者并消费消息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

from pykafka import KafkaClient
from pykafka.utils import serialize_utf8, deserialize_utf8

# 设置客户端的连接信息
client = KafkaClient(hosts="b-1.a205588-cloud-ens-msk.9t99m4.c5.kafka.us-east-1.amazonaws.com:9092")
# 打印所有的topic
print(client.topics)

# 设置循环次数

for n in client.brokers:
    # 取host
    host = client.brokers[n].host
    # 取端口号
    port = client.brokers[n].port
    # 取broker.id
    id = client.brokers[n].id
    # 打印所有信息
    print("host=%s | port=%s | broker.id=%s " % (host, port, id))

topic = client.topics['Equity-All-Topic']
topic_key_list = client.topics.keys()
print(topic_key_list)
partitions = topic.partitions
consumer = topic.get_simple_consumer(
    # 设置消费者组,没有可不写
    consumer_group="simple_consumer_group",
    partitions=[partitions[2]],
    # 设置从头开始消费
    reset_offset_on_start=True
)

for message in consumer:
    if message is not None:
        #打印消费信息
        print(message.offset)
        print ("key:")
        print(message.partition_key.decode('utf-8','ignore'))
        print("value:", message.value)
    break

#consumer = topic.get_simple_consumer(b"simple_consumer_group", partitions=[partitions[2]])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值