невозможно импортировать WriteToPubSub в python 2.7 с помощью google-cloud-pubsub-0.37.2 - PullRequest
0 голосов
/ 26 августа 2018

Я пытаюсь использовать запись в pubsbub после чтения из csv и записи нескольких преобразований, однако, как только я дошел до того, что мне нужно начать работать с pubsub, я не могу импортировать.вот что я импортирую:

from __future__ import absolute_import
import apache_beam as beam
from datetime import datetime
from beam_utils.sources import CsvFileSource
from apache_beam.io import ReadFromText
from apache_beam.io import WriteToText
from apache_beam.io.gcp.pubsub import PubsubMessage
from apache_beam.io.gcp.pubsub import ReadFromPubSub
from apache_beam.io.gcp.pubsub import ReadStringsFromPubSub
from apache_beam.io.gcp.pubsub import WriteStringsToPubSub
from apache_beam.io.gcp.pubsub import WriteToPubSub
#from apache_beam.io.gcp.pubsub import WriteToPubSub
from apache_beam.io.gcp.pubsub import _PubSubSource
from apache_beam.metrics import Metrics
from apache_beam.options.pipeline_options import PipelineOptions
from apache_beam.options.pipeline_options import SetupOptions
from apache_beam.options.pipeline_options import GoogleCloudOptions
from apache_beam.options.pipeline_options import StandardOptions

До сих пор я полагал, что только WriteToPubSub и WriteToPubSub не работают.

Ошибка выглядит следующим образом:

from apache_beam.io.gcp.pubsub import WriteToPubSub
  ImportError: cannot import name WriteToPubSub

я вижу, что модуль установлен:

py -2 -m pip show google-cloud-pubsub
Name: google-cloud-pubsub
Version: 0.26.0
Summary: Python Client for Google Cloud Pub/Sub
Home-page: https://github.com/GoogleCloudPlatform/google-cloud-python
Author: Google Cloud Platform
Author-email: jjg+google-cloud-python@google.com
License: Apache 2.0
Location: d:\python27\lib\site-packages
Requires: gapic-google-cloud-pubsub-v1, google-cloud-core, grpcio
Required-by:

обновил модуль:

Installing collected packages: google-cloud-pubsub
  Found existing installation: google-cloud-pubsub 0.26.0
    Uninstalling google-cloud-pubsub-0.26.0:
      Successfully uninstalled google-cloud-pubsub-0.26.0
Successfully installed google-cloud-pubsub-0.37.2

все та же проблема

Очень хотелось бы понять, что я делаюне так с этим?Неправильная версия?

Ответы [ 2 ]

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

WriteToPubSub принадлежит apache_beam. Таким образом, проверьте вашу pip freeze установку и найдите версию apache beam. Например: apache-beam==2.11.0. Если нет, попробуйте установить pip install apache-beam[gcp], поскольку он будет включать зависимости, необходимые для использования таких функций, как бегунок облачного потока данных Google. Для получения дополнительной информации вы можете проверить эту ссылку .

Надеюсь, это поможет.

0 голосов
/ 27 августа 2018

Я подозреваю, что вы пропали без вести proto-google-cloud-pubsub-v1==0.15.4. Поскольку вы используете GCP pubsub, используйте pip install --upgrade apache-beam[gcp] для установки Apache Beam и всех необходимых зависимостей.

Ссылка: https://cloud.google.com/dataflow/docs/quickstarts/quickstart-python#get-the-apache-beam-sdk

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...