【发布时间】:2015-07-25 18:45:08
【问题描述】:
在我的根项目文件夹中,我使用以下命令为 python 3.4 创建了一个虚拟环境:
$ virtualenv -p /Library/Frameworks/Python.framework/Versions/3.4/bin/python3.4 venv
$ source venv/bin/activate
现在我想为这个项目安装一些带有 pip 的软件包,我这样做了:
$ venv/bin/pip install html
我收到以下错误(完整回溯,除非我已将路径替换为“...”):
Collecting html
Using cached html-1.16.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<frozen importlib._bootstrap>", line 2218, in _find_and_load_unlocked
AttributeError: 'module' object has no attribute '__path__'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<string>", line 3, in <module>
File ".../venv/lib/python3.4/site-packages/setuptools/__init__.py", line 11, in <module>
from setuptools.extension import Extension
File ".../venv/lib/python3.4/site-packages/setuptools/extension.py", line 8, in <module>
from .dist import _get_unpatched
File ".../venv/lib/python3.4/site-packages/setuptools/dist.py", line 16, in <module>
from setuptools.depends import Require
File ".../venv/lib/python3.4/site-packages/setuptools/depends.py", line 6, in <module>
from setuptools import compat
File ".../venv/lib/python3.4/site-packages/setuptools/compat.py", line 44, in <module>
from html.entities import name2codepoint
ImportError: No module named 'html.entities'; 'html' is not a package
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/xz/15p_y6cn09bdc55vkvx6vrd80000gn/T/pip-build-lgl2qvpz/html
注意,我可以为 python 2.7.5 全局安装此软件包而不会出现问题,这是我 mac 上的默认版本。
我要安装的包是这个: https://pypi.python.org/pypi/html/1.16
【问题讨论】:
-
对于 python 3.4,你应该使用 pyenv 而不是 virtualenv,试试看这个:robinwinslow.co.uk/2013/12/26/python-3-4-virtual-environment
-
@dm295 好的,我试试看。谢谢
-
不,还是同样的问题。我想这是这个包的问题,因为我可以毫无问题地安装其他包。如果我这样做,我也会得到它:
/Library/Frameworks/Python.framework/Versions/3.4/bin/pip3.4 install htmldirectly -
我猜这里的问题是该包声称兼容python3,但实际上并非如此。
-
代码本身确实与python 3兼容,问题在于安装它。由于只有一个文件,我最终只是在本地复制并将其导入到我的项目中......
标签: python pip virtualenv