我需要在我的脚本中直接安装PyPi的包。也许有一些模块或distutils
(distribute
,pip
等)功能允许我只执行类似pypi.install('requests')
的操作,请求将被安装到我的virtualenv中。
如果要使用pip
安装所需的软件包并在安装后导入,可以使用以下代码:
def install_and_import(package):
import importlib
try:
importlib.import_module(package)
except ImportError:
import pip
pip.main(['install', package])
finally:
globals()[package] = importlib.import_module(package)
install_and_import('transliterate')
如果您以用户身份安装了软件包,则可能会遇到无法直接导入软件包的问题。查看如何刷新sys.path?有关更多信息,请参阅。
您也可以使用以下内容:
import pip
def install(package):
if hasattr(pip, 'main'):
pip.main(['install', package])
else:
pip._internal.main(['install', package])
# Example
if __name__ == '__main__':
install('argh')
官方推荐的从脚本安装包的方法是通过子进程调用pip的命令行接口。这里给出的大多数其他答案都不支持pip。此外,自pip v10以来,所有代码都被移动到pip。_internal
正是为了让用户清楚地知道,不允许以编程方式使用pip。
使用sys.executable
确保调用与当前运行时关联的相同pip
。
import subprocess
import sys
def install(package):
subprocess.check_call([sys.executable, "-m", "pip", "install", package])
1.7. 从源代码安装 Python 如果您宁愿从源码创建, 可以从 http://www.python.org/ftp/python/下载 Python 的源代码。选择最新的版本, 下载.tgz 文件, 执行通常的 configure, make, make install 步骤。 例 1.4. 从源代码安装 localhost:~$ su - Password: [enter your ro
问题内容: 在Windows上安装请求模块(python 2.7)时遇到问题。 根据文档尝试了以下步骤: 1个 错误 2 错误 3 错误 任何人都可以建议如何在Windows上安装该模块,而不下载任何新内容。 问题答案: 这里有四个选项: 进行设置。您创建的每个虚拟环境都将自动具有。 进行全局设置。 了解如何手动安装Python软件包-在大多数情况下,下载,解压缩(但并非总是如此)很简单。 使用C
我知道在这方面也有类似的问题。例如,这一条:为Python安装pip、virtualenv和distribute的正确方法是什么? 我想安装这些模块按照我的学习Python的硬的方式教程:http://learnpythonthehardway.org/book/ex46.html 我设法(我想)通过使用sudoeasy_installpip安装pip,但是当我运行pydoc模块时,我看不到它。所
本文向大家介绍python安装requests库的实例代码,包括了python安装requests库的实例代码的使用技巧和注意事项,需要的朋友参考一下 requests是python实现的简单易用的HTTP库,使用起来比urllib简洁很多 因为是第三方库,所以使用前需要cmd安装 安装完成后import一下,正常则说明可以开始使用了。 基本用法: requests.get()用于请求目标网站,类
首先你需要安装Golang,关于Golang的安装,参见官方文档 install instructions。 下载 你需要获取Gitea的源码,最方便的方式是使用 go 命令。执行以下命令: go get -d -u code.gitea.io/gitea cd $GOPATH/src/code.gitea.io/gitea 然后你可以选择编译和安装的版本,当前你有多个选择。如果你想编译 mas
问题内容: 我正在尝试安装一个名为Scrapy的模块。我使用安装 我在/usr/local/lib/python2.7/site-packages中看到’scrapy’文件夹,但是当我尝试将其导入Python程序时,据说没有该名称的模块。关于为什么会发生这种情况的任何想法? 编辑:这是pip命令的输出: 当我运行/ usr / local / bin / scrapy时,会得到命令和可用命令的用法