Yampy导入错误:没有名为' authenticator'

时间:2016-06-29 13:41:12

标签: python pip python-3.4 python-import yammer

TL; DR :Yampy使用相对导入...是否有一些我可以更改的设置可以使其按原样运行(无需重构项目中的每个import )?

Windows 7,Python 3.4.3,PyCharm 2016.1.4,Yampy 1.0

应该是一个相当简单的问题 - 希望有人之前遇到过这个问题。我正在关注quickstart guide。一年前有人问the same question信息较少,但没有答案。

我创建了一个virtualenv,激活并安装了yampy。这导致下面的导入错误,所以我卸载并再次安装:

(MyVenv) C:\Users\me>pip install yampy
Collecting yampy
  Using cached yampy-1.0.tar.gz
Requirement already satisfied (use --upgrade to upgrade): requests in c:\virtual environments\myvenv\lib\site-packages (from yampy)
Installing collected packages: yampy
  Running setup.py install for yampy ... done
Successfully installed yampy-1.0

创建了以下目录:

  • C:\ Virtual Environments \ MyVenv \ Lib \ site-packages \ yampy
    • __ pycache_ _(包含适当的.pyc文件)
    • 的API
      • __ pycache_ _(包含适当的.pyc文件)
      • __ init_ _.py
      • messages.py
      • users.py
      • utils.py
    • __ init_ _.py
    • authenticator.py
    • client.py
    • constants.py
    • errors.py
    • models.py
    • yammer.py

__init_ _.py的内容:

"""
The official Python client for Yammer's API
"""

from authenticator import Authenticator
from client import Client
from yammer import Yammer

问题

当我在python shell中import yampy时,我得到以下回溯(这来自PyCharm shell,但在命令行shell中也是一样的问题):

Traceback (most recent call last):
  File "<input>", line 1, in <module>
  File "C:\Program Files (x86)\JetBrains\PyCharm 2016.1\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)
  File "C:\Virtual Environments\myvenv\lib\site-packages\yampy\__init__.py", line 22, in <module>
    from authenticator import Authenticator
  File "C:\Program Files (x86)\JetBrains\PyCharm 2016.1\helpers\pydev\_pydev_bundle\pydev_import_hook.py", line 21, in do_import
    module = self._system_import(name, *args, **kwargs)

这对我没有任何意义,因为一切似乎都在那里。谢谢!

更新

如果我将_init _文件更改为使用绝对导入(from yampy.authenticator import ..而不是from authenticator import..),它会立即解决问题,但会在整个项目中创建一系列导入错误。是否有一些我可以改变的设置需要最少的重构?

1 个答案:

答案 0 :(得分:2)

应该首先检查GitHub:自2015年2月以来已经开放了open issue。显然该项目是在Python 2中。试图分叉并更新到Python 3 ..

更新:手动进行更改,大约需要5分钟。现在进口!

更新更新:Anthony Shaw(Github上的tonybaloney)发布了a package for Python 3 yampy3