0

安装 OSX 10.7.4 Eclipse Indigo、Pydev、Tweepy-1.9

我认为这应该相对简单,但我不断收到错误消息。我希望使用 sys.path.append() 指定 Tweepy API 但是 PyDev 不断向我显示“未解决的导入:tweepy”错误

我的代码

import sys
sys.path.append('/Applications/tweepy-1.9')
import tweepy

我看过几个类似的帖子,它们似乎就是否链接到顶级文件或目录中的特定文件给出了相互矛盾的建议。

我的问题是我应该像现在一样直接链接到顶级文件夹(/Applications/tweepy-1.9)还是链接到该文件夹​​中的特定文件?Machaku 向我提供了一些相关问题的信息,说我可以同时做这两个,但我必须创建一个名为“<strong>init.py”的文件并链接到它。

我都试过了,但似乎都没有。

任何建议都非常受欢迎


错误

Traceback (most recent call last):
  File "/Users/brendan/Documents/workspace/Tweeter/src/rate_limit.py", line 13, in <module>
    print api.rate_limit_status()
  File "build/bdist.macosx-10.5-fat3/egg/tweepy/binder.py", line 185, in _call
    return method.execute()
  File "build/bdist.macosx-10.5-fat3/egg/tweepy/binder.py", line 149, in execute
    raise TweepError('Failed to send request: %s' % e)
tweepy.error.TweepError: Failed to send request: [Errno 61] Connection refused

tweepy-1.9 文件结构

  • tweepy-1.9

    • 建造

      • bdist.macosx-10.5-fat3
        • 呸呸呸
          • init .py (“init”两边各有2个下划线)
          • api.py
          • 授权文件
          • 活页夹.py
          • 缓存.py
          • 游标.py
          • 错误.py
          • 模型.py
          • oauth.py
          • 解析器.py
          • 流式传输.py
          • 实用程序.py
    • 距离

      • tweepy-1.9-py2.7.egg
    • PKG-信息
    • 自述文件
    • 设置.cfg
    • 呸呸呸
      • init .py (“init”两边各有2个下划线)
      • api.py
      • 授权文件
      • 活页夹.py
      • 缓存.py
      • 游标.py
      • 错误.py
      • 模型.py
      • oauth.py
      • 解析器.py
      • 流式传输.py
      • 实用程序.py
    • tweepy.egg 信息
      • 依赖链接.txt
      • PKG-信息
      • 来源.txt
      • 顶层.txt
      • zip_safe
4

1 回答 1

3

给定堆栈跟踪,找到您的 Tweepy 库,因此您sys.path.append的工作正常。但是,如果您阅读最后一行,

tweepy.error.TweepError: Failed to send request: [Errno 61] Connection refused

错误似乎是该库无法连接到 twitter 服务。

关于放入什么sys.path,它应该是包含顶级包所在目录的文件夹。例如,如果我有以下结构

src
 | my_package
 |     | __init__.py
 |     | module_1.py
 |     | module_2.py

并且我希望能够做到的from my_package import module_1sys.path必须包含src. 此外,该__init__.py文件必须存在才能制作my_packagePython 包。

但是,动态更新sys.path绝对不是让其他 Python 程序可以访问 Python 包和模块的推荐方法。

有很多更好的解决方案:

  • 调用python setup.py install,如 Tweepy安装指南中推荐的那样(最好使用virtualenv

  • 更新 PYTHONPATH 以包含 Tweety 库的根路径。

  • 使用站点模块.pth读取的文件

您可以在有关安装 Python 模块的 Python 文档中找到更多详细信息,尤其是在修改 Python 的搜索路径部分

于 2012-06-20T17:03:33.113 回答