【问题标题】:google-cloud-bigquery pgk_resources谷歌云大查询 pgk_resources
【发布时间】:2018-12-04 12:58:52
【问题描述】:

我遵循此 Google 指南:https://cloud.google.com/bigquery/docs/reference/libraries#client-libraries-install-python 运行脚本后出现错误:

    Traceback (most recent call last):
      File "/home/pyc6eh4uk/PycharmProjects/fintech_python/bq_jobs/big_query_test.py", line 2, in <module>
        from google.cloud import bigquery
      File "/usr/local/lib/python2.7/dist-packages/google/cloud/bigquery/__init__.py", line 32, in <module>
        __version__ = get_distribution('google-cloud-bigquery').version
      File "/home/pyc6eh4uk/Programms/google-cloud-sdk/platform/google_appengine/lib/setuptools-0.6c11/pkg_resources.py", line 311, in get_distribution
        if isinstance(dist,Requirement): dist = get_provider(dist)
      File "/home/pyc6eh4uk/Programms/google-cloud-sdk/platform/google_appengine/lib/setuptools-0.6c11/pkg_resources.py", line 197, in get_provider
        return working_set.find(moduleOrReq) or require(str(moduleOrReq))[0]
      File "/home/pyc6eh4uk/Programms/google-cloud-sdk/platform/google_appengine/lib/setuptools-0.6c11/pkg_resources.py", line 666, in require
        needed = self.resolve(parse_requirements(requirements))
      File "/home/pyc6eh4uk/Programms/google-cloud-sdk/platform/google_appengine/lib/setuptools-0.6c11/pkg_resources.py", line 565, in resolve
        raise DistributionNotFound(req)  # XXX put more info here
    pkg_resources.DistributionNotFound: google-cloud-bigquery

所以我认为位于我的主目录中的 google-cloud-sdk 和 /usr/local/lib/python2.7/dist-packages/google/cloud 中的 bigquery 包之间存在冲突问题 如何避免这种冲突,或者如何设置适用于 google sdk 和 bigqery 的环境?

【问题讨论】:

    标签: python ubuntu google-bigquery google-cloud-sdk


    【解决方案1】:

    我刚刚进行了快速测试,但无法重现此行为。要隔离问题,您可以通过执行以下操作来使用 virtualenv:

    -$ virtualenv test

    -$ pip freeze(确保没有安装任何东西)

    -$ source test/bin/activate

    -$ pip install --upgrade google-cloud-bigquery

    安装后,您可以按照目前使用的tutorial 并在 de virtualenv 中执行脚本。 完成后,您可以通过运行 $ deactivate

    离开 virtualenv

    【讨论】:

    • 它在 virtualenv 中工作。为什么它在普通环境中不起作用。让我尝试更详细地解释一下。我有 PyCharm,在这个 IDE 中在设置中定义 google SDK,所以我可以测试我的服务器在本地是如何工作的。而且我还安装了 bigquery(bq),用于在服务器上做一些工作,在 virtualenv bq 中工作,但通常 env 不起作用。此外,在安装 google SDK bigquery 之前可以正常工作。
    • 现在我在命令行中运行脚本,它可以工作了。但在 PyCharm 中,我订阅的内容有误。
    • 那么这一定是你本地环境和PyCharm的问题。
    猜你喜欢
    • 1970-01-01
    • 2018-08-03
    • 2017-11-16
    • 1970-01-01
    • 1970-01-01
    • 2015-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多