如何使用Python';s pip下载并保存压缩文件包?
如果我想使用如何使用Python';s pip下载并保存压缩文件包?,python,download,pip,zip,Python,Download,Pip,Zip,如果我想使用pip命令下载一个包(及其依赖项),但保留下载的所有压缩文件(比如django socialregistration.tar.gz),有没有办法做到这一点 我尝试过各种命令行选项,但它似乎总是解包并删除zipfile-或者它得到zipfile,但只针对原始包,而不是依赖项。下载缓存选项应该满足您的要求: pip install --download-cache="/pth/to/downloaded/files" package pip install package --down
pip
命令下载一个包(及其依赖项),但保留下载的所有压缩文件(比如django socialregistration.tar.gz),有没有办法做到这一点
我尝试过各种命令行选项,但它似乎总是解包并删除zipfile-或者它得到zipfile,但只针对原始包,而不是依赖项。下载缓存选项应该满足您的要求:
pip install --download-cache="/pth/to/downloaded/files" package
pip install package --download="/pth/to/downloaded/files"
然而,当我测试这个时,主程序包下载、保存和安装都正常,但是依赖项是以其完整的url路径作为名称保存的-有点烦人,但是所有的tar.gz
文件都在那里
--download
选项下载主软件包及其依赖项,而不安装任何一个。(注意在版本1.1之前,--download
选项没有下载依赖项。)
pip
文档概述了使用--download
for.我总是这样做来下载软件包:
pip wheel mypackage -w .\outputdir --no-deps
pip安装——下载/path/to/download/to\u packagename
或
pip安装--download=/path/to/packages/download-r requirements.txt
当我想安装我刚下载的所有库时,我会这样做:
pip安装--无索引--查找链接=“/path/to/download/dependencies”packagename
或
pip安装--无索引--查找链接=“/path/to/download/packages”-r requirements.txt
更新 另外,要在一个系统上安装所有软件包,您可以将它们全部导出到
requirement.txt
,用于在另一个系统上安装它们,我们执行以下操作:
pip freeze>requirement.txt
然后,可以如上所述使用requirement.txt
进行下载,或者从requirement.txt
进行安装:
pip安装-r requirement.txt
参考资料:在7.1.2版中,pip下载程序包的控制盘(如果可用),包括以下内容:
pip install package -d /path/to/downloaded/file
以下内容下载源发行版:
pip install package -d /path/to/downloaded/file --no-binary :all:
如果pip知道这些依赖项(例如,如果pip show package
列出了它们),则也可以下载这些依赖项
更新 如所述,
pip download
命令是自版本8以来的首选命令。在上述示例中,这意味着需要为/path/to/download/file
提供选项-d
,因此将安装
替换为下载
是可行的。pip安装--download
不推荐使用。从版本8.0.0开始,应使用以下命令:
pip下载
使用pip下载
下载所有软件包,包括依赖项
使用pip安装--无索引--查找链接代码>
以安装所有软件包,包括依赖项。
它从CWD
获取所有文件。
它不会下载任何内容是您应该考虑的另一个选项:
pip wheel mypackage -w .\outputdir
它会将包及其依赖项下载到一个目录(默认情况下为当前工作目录),但它会执行将任何源包转换为控制盘的附加步骤
它方便地支持需求文件:
pip wheel -r requirements.txt -w .\outputdir
如果只需要特定请求的包,请添加--no deps
参数:
pip wheel mypackage -w .\outputdir --no-deps
脱机安装python包
对于windows用户:
下载到文件中
打开你的cmd,然后按以下步骤操作:
cd
pip下载
包和依赖项将下载到当前工作目录中
要从当前工作目录安装,请执行以下操作:
将您下载的文件夹设置为cwd,然后执行以下操作:
pip安装--无索引--查找链接
这将搜索该位置的依赖项。我更喜欢(RHEL)pip下载包==version--没有deps--没有二进制=:all:不错,确实有效-尽管我在上标记了一个
--没有安装
选项。关于时髦的文件名,你是对的,但至少文件在那里。上次我检查时,--download
选项下载带有依赖项的包。--download cache已被弃用。在现在已弃用的中使用pip安装--downloadpip安装--download
,并将从pip 10中删除。使用pip-download-somepackage
。具体来说,新的等价物是pip-download-d{-r requirements.txt}
以及以后如何安装下载的软件包?@knoctepip下载软件包的安装路径
几天前尝试过,我认为它仍然试图从internet检索deps,而不是使用下载的deps;IIRC,我不得不使用sudopip安装--无索引--查找链接`pwd`
注意pip下载
还支持-r requirements.txt
,因此您可以轻松地从连接到internet的机器下载它们,然后复制到脱机机器,并安装上面的注释或pip下载-d
到下载到特定目录。所有依赖项都已下载。我必须在windows中开发,并在RH7上部署,完全没有internet连接。因此,我下载的源程序包没有二进制代码:all:。但是,当收集django pyodbc azure==2.0.4.1时,此操作失败,因为此包没有源。是否有办法下载源代码,或者如果不存在,下载weehl?如果不指定平台,它将下载当前操作系统的文件。因此,如果您在其他操作系统上安装下载的文件,这将不起作用