从pip下载包以供脱机使用。

pip-downloader的Python项目详细描述


PIP下载程序

pip-downloader有助于允许离线安装python包。

{tt2}$已经存在,它做了类似的事情:
  • pro:以同样的方式处理依赖项解析pip install这样就不会混淆了
  • pro:下载所有带有--no-binary :all:参数的源包是很有用的。
  • 问题:每个软件包仅下载一个文件(即,仅下载源文件或一个控制盘文件)
  • con:对于下载不同系统(不是从运行它的系统)而言,它需要
    包及其所有依赖项具有相似的轮子(例如:ifcp36m-manylinux 是一个库的控制盘,它的所有依赖项也应该有那个控制盘)
pip-downloader旨在解决相同的问题,但方式略有不同:
  • 它使用与pip download相同的依赖项解析,但在解析依赖项之后
  • 它会下载该软件包版本的所有可用文件(源文件和所有控制盘文件)

这提供了一种更符合pip在线安装的体验。 要安装的所有文件(所有控制盘和源)。

安装

建议在使用pip下载程序时使用pip的最新版本(当前为-19.1)。

pip install pip-downloader

用法

命令行实用程序pip downloader应该可用。

# To get help about pip-downloader
pip-downloader --help

# To fetch the list of packages and their versions that downloader will download (dry-run)
pip-downloader list flask

# To download the list of packages and their versions to the provided destination
pip-downloader download flask --dest /tmp/pypi

已知限制

  • Dependencies mentioned in setup_requires are not downloaded as pip’s dependency resolution mechanism does not consider them at the moment. Common setup-time requirements are: setuptools_scm, vcversioner, numpy, etc.
  • Build dependencies mentioned in pyproject.toml are not downlaoded as pip’s dependency manages install/run-time dependencies at the moment. (These are needed only if source installation is chosen when installing a package.)
  • When solving for packages with sys_platform environment markers, the package resolution will happen based on the machine you’re running pip-downloader from. Need to investigate on how to resolve this issue.

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何创建比较器   java将所有接口读入列表   java Android Studio在Webview中隐藏特定URL的操作栏   java如何在春季从云存储中生成URL文件而无需持续时间   icalendar如何使用Java以日历格式发送ics电子邮件附件?   如果textfield包含数字,则在运行时进行java检查   java util日志属性中何时需要“.level”?   java在一个字符串中显示json   跨平台日志系统的java Log4j替代方案   coldfusion在Lucee上安装Cassandra Java驱动程序   SpringWebMVC4Java配置不工作   windows使用java程序添加环境变量,并且能够在我从计算机打开“环境”选项卡时看到   java未设置变量和方法   mysql在java中通过查询更改数据库的现有行   java如何使用递归方法查找所有可能的数字   java如何使非原语类成员不可变   java将信息从输入按钮传递到标签