【问题标题】:Installing BeautifulSoup in virtualenv without sudo-permission在没有 sudo 权限的情况下在 virtualenv 中安装 BeautifulSoup
【发布时间】:2012-10-12 18:23:33
【问题描述】:

当我尝试通过 pip 和 trough 下载的 tar.gz 球在 virtualenv 中安装 BeautifulSoup 和 Yolk 时,我遇到了一个问题:

(ola)1x-193-157-193-184:beautifulsoup4-4.1.3 ola$ python setup.py install
running install
running build
running build_py
running install_lib
running install_egg_info
removing '/Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info' (and everything under it)
error removing /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info: /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info/dependency_links.txt: Permission denied
error removing /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info: /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info/installed-files.txt: Permission denied
error removing /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info: /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info/PKG-INFO: Permission denied
error removing /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info: /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info/SOURCES.txt: Permission denied
error removing /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info: /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info/top_level.txt: Permission denied
error removing /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info: /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info: Permission denied
Writing /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info
error: /Library/Python/2.7/site-packages/beautifulsoup4-4.1.3-py2.7.egg-info: Is a directory

我尝试通过 pip 安装时出现同样的问题:

(ola)1x-193-157-193-184:beautifulsoup4-4.1.3 ola$ pip install BeautifulSoup4
Downloading/unpacking BeautifulSoup4
  Downloading beautifulsoup4-4.1.3.tar.gz (131Kb): 131Kb downloaded
  Running setup.py egg_info for package BeautifulSoup4

Installing collected packages: BeautifulSoup4
  Running setup.py install for BeautifulSoup4
    error: could not delete '/Library/Python/2.7/site-packages/bs4/__init__.py': Permission denied
    Complete output from command /Users/ola/.virtualenvs/ola/bin/python -c "import setuptools;__file__='/Users/ola/.virtualenvs/ola/build/BeautifulSoup4/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --single-version-externally-managed --record /var/folders/3z/xsfq9cfx6vb18z0n84xnbdd00000gn/T/pip-JmvSkh-record/install-record.txt --install-headers /Users/ola/.virtualenvs/ola/include/site/python2.7:
    running install

running build
running build_py
creating build
creating build/lib
creating build/lib/bs4
copying bs4/__init__.py -> build/lib/bs4
copying bs4/dammit.py -> build/lib/bs4
copying bs4/element.py -> build/lib/bs4
copying bs4/testing.py -> build/lib/bs4
creating build/lib/bs4/builder
copying bs4/builder/__init__.py -> build/lib/bs4/builder
copying bs4/builder/_html5lib.py -> build/lib/bs4/builder
copying bs4/builder/_htmlparser.py -> build/lib/bs4/builder
copying bs4/builder/_lxml.py -> build/lib/bs4/builder
creating build/lib/bs4/tests
copying bs4/tests/__init__.py -> build/lib/bs4/tests
copying bs4/tests/test_builder_registry.py -> build/lib/bs4/tests
copying bs4/tests/test_docs.py -> build/lib/bs4/tests
copying bs4/tests/test_html5lib.py -> build/lib/bs4/tests
copying bs4/tests/test_htmlparser.py -> build/lib/bs4/tests
copying bs4/tests/test_lxml.py -> build/lib/bs4/tests
copying bs4/tests/test_soup.py -> build/lib/bs4/tests
copying bs4/tests/test_tree.py -> build/lib/bs4/tests
running install_lib
copying build/lib/bs4/__init__.py -> /Library/Python/2.7/site-packages/bs4
error: could not delete '/Library/Python/2.7/site-packages/bs4/__init__.py': Permission denied
----------------------------------------
Command /Users/ola/.virtualenvs/ola/bin/python -c "import setuptools;__file__='/Users/ola/.virtualenvs/ola/build/BeautifulSoup4/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --single-version-externally-managed --record /var/folders/3z/xsfq9cfx6vb18z0n84xnbdd00000gn/T/pip-JmvSkh-record/install-record.txt --install-headers /Users/ola/.virtualenvs/ola/include/site/python2.7 failed with error code 1 in /Users/ola/.virtualenvs/ola/build/BeautifulSoup4
Storing complete log in /Users/ola/.pip/pip.log

我的 virtualenv 安装有什么问题吗?所有文件(Python 和库)都分开包含的关于 virtualenv 的好处之一不是吗?

--- 更新 ---

我试图创建一个新的 virtualenv,但我得到的只是这个错误消息:

Olas-MacBook-Pro:~ ola$ mkvirtualenv olaenv
New python executable in olaenv/bin/python
Installing setuptools.............................
  Complete output from command /Users/ola/.virtualenvs/olaenv/bin/python -c "#!python
\"\"\"Bootstra...sys.argv[1:])






" /Users/ola/.venvburr...ols-0.6c11-py2.7.egg:
  error: can't create or remove files in install directory

The following error occurred while trying to add or remove files in the
installation directory:

    [Errno 13] Permission denied: '/Library/Python/2.7/site-packages/test-easy-install-88488.write-test'

The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

    /Library/Python/2.7/site-packages/

Perhaps your account does not have write access to this directory?  If the
installation directory is a system-owned directory, you may need to sign in
as the administrator or "root" account.  If you do not have administrative
access to this machine, you may wish to choose a different installation
directory, preferably one that is listed in your PYTHONPATH environment
variable.

For information on other options, you may wish to consult the
documentation at:

  http://packages.python.org/distribute/easy_install.html

Please make the appropriate changes for your system and try again.

----------------------------------------
...Installing setuptools...done.
Traceback (most recent call last):
  File "/Users/ola/.venvburrito/bin/virtualenv", line 9, in <module>
    load_entry_point('virtualenv==1.7.2', 'console_scripts', 'virtualenv')()
  File "/Users/ola/.venvburrito/lib/python/virtualenv-1.7.2-py2.7.egg/virtualenv.py", line 942, in main
    never_download=options.never_download)
  File "/Users/ola/.venvburrito/lib/python/virtualenv-1.7.2-py2.7.egg/virtualenv.py", line 1052, in create_environment
    search_dirs=search_dirs, never_download=never_download)
  File "/Users/ola/.venvburrito/lib/python/virtualenv-1.7.2-py2.7.egg/virtualenv.py", line 598, in install_setuptools
    search_dirs=search_dirs, never_download=never_download)
  File "/Users/ola/.venvburrito/lib/python/virtualenv-1.7.2-py2.7.egg/virtualenv.py", line 570, in _install_req
    cwd=cwd)
  File "/Users/ola/.venvburrito/lib/python/virtualenv-1.7.2-py2.7.egg/virtualenv.py", line 1020, in call_subprocess
    % (cmd_desc, proc.returncode))
OSError: Command /Users/ola/.virtualenvs/olaenv/bin/python -c "#!python
\"\"\"Bootstra...sys.argv[1:])






" /Users/ola/.venvburr...ols-0.6c11-py2.7.egg failed with error code 1
Olas-MacBook-Pro:~ ola$ 

有什么建议吗?

【问题讨论】:

  • 确定 pippython 是你虚拟环境中的命令吗?请与which pipwhich python 联系。
  • 您好,谢谢。两者都位于 virtualenvs 文件夹中: (ola)1x-193-157-193-184:beautifulsoup4-4.1.3 ola$ which pip /Users/ola/.virtualenvs/ola/bin/pip (ola)1x-193- 157-193-184:beautifulsoup4-4.1.3 ola$ 其中python /Users/ola/.virtualenvs/ola/bin/python (ola)1x-193-157-193-184:beautifulsoup4-4.1.3 ola$跨度>
  • 您可以尝试使用新的虚拟环境吗? $ mkdir ~/tmp; cd ~/tmp; virtualenv venv; source venv/bin/activate; pip install BeautifulSoup4
  • 我尝试过,但在尝试创建新的 virtualenv 时收到错误消息:/
  • 您可以尝试先以 root 身份全局安装 setuptools 吗?

标签: python virtualenv pip


【解决方案1】:

如果它是旧版本的 virtualenv,“--no-site-packages”直到最近才默认(2011 年 11 月 30 日的 1.7 版)。在创建 virtualenv 时尝试显式使用该标志。

mkvirtualenv olaenv --no-site-packages

【讨论】:

  • 感谢您的建议,但问题仍然存在。
【解决方案2】:

简而言之:您必须使用 sudo 安装 virtualenv

我就是这样做的:

  • sudo pip uninstall virtualenv(为了进行全新安装)
  • sudo pip install virtualenv
  • 虚拟环境
  • 光盘
  • 源 bin/激活 此时,您可以通过以下方式检查您是否使用了正确的 pip 或 python:

  • 哪个蟒蛇

  • 哪个点

它们应该是 virtualenv 的

此时您可以使用以下命令安装 bs: - pip install beautifulsoup4

【讨论】:

    猜你喜欢
    • 2021-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-10
    相关资源
    最近更新 更多