【问题标题】:Python import web not workingPython导入网络不起作用
【发布时间】:2012-02-16 03:55:52
【问题描述】:

所以在运行导入 web 的脚本时出现以下错误。

$ python bin/app.py
Traceback (most recent call last):
File "bin/app.py", line 1, in <module>
import web
ImportError: No module named web

我尝试使用easy_install web,但收到此错误:

$ easy_install web
Searching for web
Reading http://pypi.python.org/simple/web/
Reading http://www.pythonweb.org/web/
Reading http://www.pythonweb.org/web/release/
No local packages or download links found for web
error: Could not find suitable distribution for Requirement.parse('web')

我尝试了pip install web,但得到以下结果:

$ pip install web
Downloading/unpacking web
Could not find any downloads that satisfy the requirement web
No distributions at all found for web
Storing complete log in /Users/zcj90/.pip/pip.log
Traceback (most recent call last):
File "/usr/local/bin/pip", line 8, in <module>
load_entry_point('pip==1.0.2', 'console_scripts', 'pip')()
File "/Library/Python/2.6/site-packages/pip-1.0.2-py2.6.egg/pip/__init__.py", line 116, in main
return command.main(initial_args, args[1:], options)
File "/Library/Python/2.6/site-packages/pip-1.0.2-py2.6.egg/pip/basecommand.py", line 151, in main
log_fp = open_logfile(log_fn, 'w')
File "/Library/Python/2.6/site-packages/pip-1.0.2-py2.6.egg/pip/basecommand.py", line 180, in open_logfile
log_fp = open(filename, mode)
IOError: [Errno 13] Permission denied: '/Users/zcj90/.pip/pip.log'

有什么建议吗?

app.py 的代码:

import web

urls = (
    '/', 'index'
)
app = web.application(urls, globals())
class index:
    def GET(self):
        greeting = "Hello World"
        return greeting
if __name__ == "__main__":
    app.run()*

【问题讨论】:

  • 我正在学习 learnpythonthehardway 教程,我尝试运行的脚本的第一行是 import web;我该怎么办?
  • app.py 是哪种类型的脚本。请给出代码。

标签: python web installation pip sudo


【解决方案1】:

以下是你需要运行的命令

$ easy_install web.py

根据 lpthw 的文档(它只使用 web.py 的一个分支),您可以运行:

$ pip install lpthw.web

然后要运行应用程序,您只需要做:

$ python app.py

【讨论】:

  • 不幸的是,这不起作用。这是输出:pip install lpthw.web Requirement already satisfied (use --upgrade to upgrade): lpthw.web in /Library/Python/2.6/site-packages Cleaning up...
  • 我刚刚在我的服务器上运行了它,用户 easy_install lpthw.web 似乎工作得很好,可能会试一试。抱歉,回复时间长。
【解决方案2】:

老问题,但对于通过网络搜索找到此问题的人来说,这是您正在寻找的命令,假设是基于 apt 的 linux 发行版,如 ubuntu 或 debian:

$ sudo aptitude install python-webpy

【讨论】:

  • 真的吗? aptitude 是如何解决 OS X 上的问题的?使用系统或包管理器未安装的 python?
  • 真的吗?我的回答并不适合所有人,但对很多人都有帮助。也许你认为大多数用户在 OS X 上手动安装 python。
  • 不,大多数用户使用 OS X 预装的 Python。大多数安装另一个 Python 的人使用来自 python.org 的二进制安装程序(或者,有时是 ActiveState 或 Enthought )。而那些从包管理器安装的人倾向于使用 OS X 上实际存在的包管理器,比如 Homebrew,而不是 apt。并且 Homebrew 明确不包含 Python 包,建议您使用 pip 用于 Python 包。所以,这个答案对几乎没有人有帮助。
  • 也许你没有注意到这个问题没有明确提到 OS X。我将编辑我的答案以表明它只对基于 apt 的 linux 发行版有效。你的对抗态度也很有帮助。
  • linux上没有/Library/Python/2.6/site-packages/这样的目录。当你说“也许你认为大多数用户在 OS X 上手动安装 python”时,这清楚地暗示你相信你的答案可以在 OS X 上工作。
【解决方案3】:

您必须从http://webpy.org/static/web.py-0.36.tar.gz下载源代码。

安装网页的步骤在http://webpy.org/install

如果遇到任何错误,请按照步骤操作,然后将 cmets 添加到此帖子或更新问题。

【讨论】:

    【解决方案4】:

    Pythonweb 已经过时了,但他们仍然有a downloads page,您可以在其中获取最新版本。然后只需做一个python setup.py install

    【讨论】:

      【解决方案5】:

      对于 Ubuntu 操作系统,使用以下命令安装 python web:

      sudo apt-get install python-webpy
      

      【讨论】:

        【解决方案6】:

        使用点子:pip install web.py==0.40.dev0

        【讨论】:

          【解决方案7】:

          问题是您很可能使用pip install lpthw.web 来安装,但是 lpthw 书使用的是 python 2.7,所以 pip2.7 会解决这个问题:

          pip2.7 install lpthw.web

          【讨论】:

            猜你喜欢
            • 2013-01-01
            • 2020-08-14
            • 1970-01-01
            • 2016-03-22
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-07-27
            • 2018-01-08
            相关资源
            最近更新 更多