安装后无法导入praw模块

11 浏览
0 Comments

安装后无法导入praw模块

编辑:在您开始删除/修改安装程序之前,请浏览StvnW的答案/摘要,以确保您正在应用适合您的解决方案。

我已经安装了Python 2.7.5和pip [编辑:Mac OSX Mountain Lion。] 我在终端中运行了“pip install praw”。一切正常。当我运行Python并运行“import praw”时,我得到:

    ...$ python
    Python 2.7.5 (v2.7.5:ab05e7dd2788, May 13 2013, 13:18:45) 
    [GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import praw
    Traceback (most recent call last):
      File "", line 1, in 
    ImportError: No module named praw

...从脚本中的同一ImportError。

我安装praw时会得到这个:

    $ pip install praw
    Downloading/unpacking praw
      Downloading praw-2.1.10.tar.gz (83kB): 83kB downloaded
      Running setup.py egg_info for package praw
    Requirement already satisfied (use --upgrade to upgrade): requests>=1.2.0 in
    /usr/local/lib/python2.7/site-packages (from praw)
    Requirement already satisfied (use --upgrade to upgrade): six in
    /usr/local/lib/python2.7/site-packages (from praw)
    Requirement already satisfied (use --upgrade to upgrade): update-checker>=0.6 in
    /usr/local/lib/python2.7/site-packages (from praw)
    Requirement already satisfied (use --upgrade to upgrade): setuptools in
    /usr/local/lib/python2.7/site-packages/setuptools-1.1.6-py2.7.egg (from update-
    checker>=0.6->praw)
    Installing collected packages: praw
      Running setup.py install for praw
        Installing praw-multiprocess script to /usr/local/bin
    Successfully installed praw
    Cleaning up...

如果我在Python中运行help(\'modules\'),它不会在那里。

对Python相对较新,我无法通过谷歌搜索解决此问题。任何提示将不胜感激。

编辑:

状况报告:

我已经卸载了2.7.2,卸载了praw,并卸载了(homebrew)pip。我运行了Python 2.7.5,它找不到该模块(如您所预计的)。然后,我使用easy_install重新安装了pip,现在2.7.5找到了praw,但出现了以下错误:

    $ python
    Python 2.7.5 (v2.7.5:ab05e7dd2788, May 13 2013, 13:18:45) 
    [GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import praw
    Traceback (most recent call last):
      File "", line 1, in 
      File "/Library/Python/2.7/site-packages/praw/__init__.py", line 43, in 
         from update_checker import update_check
       File "/Library/Python/2.7/site-packages/update_checker.py", line 11, in 
         from pkg_resources import parse_version as V
    ImportError: No module named pkg_resources
    >>>

感谢迄今为止的帮助,无意义的安装是问题1的根源。

最终问题的解决方案可以在此处找到:

No module named pkg_resources

我希望有一种方法可以为未来的读者总结这个问题,但我已经做了很多事情,不再记得是什么解决了什么问题。基本上我卸载了所有东西(Python 2.7.2、2.7.5、praw、pip),从http://python.org/download/重新安装了2.7.5,使用easy_install(和sudo命令)而不是homebrew重新安装pip,使用sudo命令重新安装praw,并按照上面链接中的后续模块错误的说明进行操作。希望这有所帮助。 🙂

admin 更改状态以发布 2023年5月21日
0
0 Comments

很奇怪。我怀疑你的Mac OS上有另一个版本的Python2.7。

0
0 Comments

OS X系统中的Python版本位于/System/Library/Frameworks/Python.Framework/,每个版本都链接到/Library/Python//site-packages。看起来你已经安装了另一个Python版本和/或pip到/usr/local,但调用python时你仍然会获得系统版本。

尝试这个:

$ /usr/local/bin/python
>>> import praw

如果您要处理Python,则我还建议使用pyenvvirtualenv等工具。Pyenv让您轻松管理和切换多个版本(包括微版本x.x.3,x.x.5等)。Virtualenv让您创建隔离的Python环境,在该环境中您可以将site-packages的版本固定在特定项目中。

编辑(总结):

  • sudo easy_install pip将在/System/Library/Python/下安装pip。调用该pip将在/Library/Python//site-packages中安装软件包
  • brew install python将在/usr/local/下安装第二个版本的python - 包括pip。该pip将在/usr/local/lib/python/site-packages/中放置软件包。
  • 一个版本可能无法看到安装在另一个版本中的软件包。
  • which pythonwhich pip有助于故障排除。
  • Dean的最终解决方案会导致将用户软件包安装到系统site-packages中。
  • 尽管Dean选择更新系统Python,但许多人会主张使用brewpyenvvirtualenv来与系统Python隔离。
0