python連接kafka加載數(shù)據(jù)的項目實踐
背景:讀取TXT文件,加載到kafka中,然后通過logstash消費kafka中的數(shù)據(jù)加載到es中
第一步:導(dǎo)入相應(yīng)的依賴包
pip install kafka-python pip install loguru pip install msgpack
第二步:編寫連接kafka的代碼
# -*- coding: utf-8 -*- import json import json import msgpack from loguru import logger from kafka import KafkaProducer from kafka.errors import KafkaError def kfk_produce_1(): """ 發(fā)送 json 格式數(shù)據(jù) :return: """ producer = KafkaProducer( //連接kafka集群的配置信息 bootstrap_servers='192.168.85.109:9092', value_serializer=lambda v: json.dumps(v).encode('utf-8') ) //這里是你創(chuàng)建topic和打算發(fā)送數(shù)據(jù)的地方 producer.send('python_test_topic', {'key': 'value'}) kfk_produce_1()
第三步:驗證是否在kafka中創(chuàng)建topic
kafka的消費者界面上已經(jīng)出現(xiàn)了創(chuàng)建的topic,并且數(shù)據(jù)也接收到了
注意:下面的消費者界面的按鈕,要先運行起來,選擇好kafka環(huán)境和topic,group以后,點擊那個綠色的運行按鈕,就能實時看到發(fā)送過來的消息了,??
問題記錄:
然后在使用時,報錯提示:ImportError: cannot import name ‘KafkaConsumer’
找了一會兒最后發(fā)現(xiàn)自己創(chuàng)建的文件名叫做:kafka.py,突然意識到問題出在哪里了。
原因:
簡單說就是因為,創(chuàng)建的文件名是kafka.py,這會導(dǎo)致代碼運行時,python解釋器查找kafka的模塊時,就找到自身kafka.py了,所以就報錯。
以后寫代碼的時候,還是要注意,切記不要用關(guān)鍵字去命名文件,避免不必要的麻煩。
到此這篇關(guān)于python連接kafka加載數(shù)據(jù)的項目實踐的文章就介紹到這了,更多相關(guān)python連接kafka加載數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python利用前序和中序遍歷結(jié)果重建二叉樹的方法
這篇文章主要介紹了Python利用前序和中序遍歷結(jié)果重建二叉樹的方法,實例分析了Python二叉樹的定義與遍歷操作技巧,需要的朋友可以參考下2016-04-04Python開發(fā)生產(chǎn)環(huán)境常用的4個工具(實用推薦)
構(gòu)建優(yōu)秀的軟件需要遵循特定的規(guī)則并執(zhí)行行業(yè)標準,如何在真實的生產(chǎn)環(huán)境開發(fā)中體現(xiàn)呢?在這篇文章中,我將向您展示我在Python項目中設(shè)置的4種工具,以簡化開發(fā)工作流程并執(zhí)行一些最佳實踐,這些工具幫助我提高了效率,節(jié)省了時間,希望你讀完也能有所收獲2024-01-01Python docx庫刪除復(fù)制paragraph及行高設(shè)置圖片插入示例
這篇文章主要為大家介紹了Python docx庫刪除復(fù)制paragraph及行高設(shè)置圖片插入操作實現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-07-07