【问题标题】:ImportError: cannot import name 'urlencode' when trying to install flask.ext.storageImportError:尝试安装 flask.ext.storage 时无法导入名称“urlencode”
【发布时间】:2017-10-17 07:21:50
【问题描述】:

我正在使用 Python 3.5.1 / Window 8.1

>> pip install -e git://github.com/kvesteri/flask-storage.git#egg=Flask-Storage

这是结果:

Obtaining Flask-Storage from git+git://github.com/kvesteri/flask-storage.git#egg=Flask-Storage
  Updating c:\users\rodolfo\desktop\dumppython\flask\venv\src\flask-storage clone
Requirement already satisfied: Flask>=0.7 in c:\users\rodolfo\desktop\dumppython\flask\venv\lib\site-packages (from Flask-Storage)
Requirement already satisfied: boto>=2.5.2 in c:\users\rodolfo\desktop\dumppython\flask\venv\lib\site-packages (from Flask-Storage)
Collecting python-cloudfiles>=1.7.10 (from Flask-Storage)
  Using cached python-cloudfiles-1.7.11.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "C:\Users\Rodolfo\AppData\Local\Temp\pip-build-t2cefnr2\python-cloudfiles\setup.py", line 6, in <module>
        from cloudfiles.consts import __version__
      File "C:\Users\Rodolfo\AppData\Local\Temp\pip-build-t2cefnr2\python-cloudfiles\cloudfiles\__init__.py", line 82, in <module>
        from cloudfiles.connection     import Connection, ConnectionPool
      File "C:\Users\Rodolfo\AppData\Local\Temp\pip-build-t2cefnr2\python-cloudfiles\cloudfiles\connection.py", line 13, in <module>
        from    urllib    import urlencode
    ImportError: cannot import name 'urlencode'
    

我能做些什么来解决这个问题?

【问题讨论】:

  • 我用 python3.4 试过了,但也没有用。我决定用 python 2.7 创建一个新的虚拟环境(我使用了 conda link )。有效。我想知道_python3.x_ 是否不支持 Flask-Storage

标签: python-3.x pip urlencode flask-extensions


【解决方案1】:

urllib 模块已被拆分为多个部分,并在 Python 3 中重命名为 urllib.request、urllib.parse 和 urllib.error。

[来自https://docs.python.org/2/library/urllib.html]

所以在 Python 2 中是:

from urllib import urlencode

在 Python 3 中是:

from urllib.parse import urlencode

【讨论】:

    【解决方案2】:

    块引用 检查不同的版本

    pip install Werkzeug==0.14.1

    【讨论】:

    • 这没有回答问题