Python Kafka SyntaxError при запуске производителя или потребителя - PullRequest
0 голосов
/ 07 марта 2019

Я новичок в kafka и пытаюсь создать простое приложение hello world, используя ссылку tutorial .Я запустил zookeeper, а затем команду kafka-server-start, но когда я запускаю продюсера, я получаю следующую ошибку

Traceback (most recent call last):
  File "D:/Python/consumer.py", line 1, in <module>
    from kafka import KafkaConsumer
  File "D:\Python\venv\lib\site-packages\kafka\__init__.py", line 23, in <module>
    from kafka.producer import KafkaProducer
  File "D:\Python\venv\lib\site-packages\kafka\producer\__init__.py", line 4, in <module>
    from .simple import SimpleProducer
  File "D:\Python\venv\lib\site-packages\kafka\producer\simple.py", line 54
    return '<SimpleProducer batch=%s>' % self.async
                                                  ^
SyntaxError: invalid syntax

Я попытался изменить версию kafka-python до 1.4.3, ничего не кажетсяработать.Любые указатели будут с благодарностью Следующие мои файлы Python: Producer.py:

from kafka import KafkaProducer
producer = KafkaProducer(bootstrap_servers='localhost:9092')
producer.send('sample', b'Hello, World!')
producer.send('sample', key=b'message-two', value=b'This is Kafka-Python')

Consumer.py:

from kafka import KafkaConsumer
consumer = KafkaConsumer('sample')
for message in consumer:
    print (message)

Шаги, которые я выполнил:1. Запустите зоопарк с помощью команды

.\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties

2.После запуска зоопарка я выполнил команду

.\bin\windows\kafka-server-start.bat .\config\server.properties

3.Когда сервер был запущен, я запустил команду python production.py, за которой последовал consumer.py

Может кто-нибудь сказать мне, где я ошибаюсь?Спасибо!

1 Ответ

0 голосов
/ 07 марта 2019

Вам нужно изменить версию Python 3.6. есть проблема совместимости с 3.7.

Отметьте это Сценарий Python не может импортировать библиотеку kafka во время работы в Docker

...