python导出项目依赖包生成requirements文件
许多教程使用的是pip freeze > requirements.txt指令,但是这个指令只能检索当前虚拟环境中安装的包。要想自动检索项目文件中的依赖包要使用pipreqs, 使用方法如下:
1. 首先安装pipreqs
1 # 在工程根目录下执行常规安装命令 2 pipreqs ./ --force 3 4 # 如果执行遇到编码问题,可以在工程根目录下执行如下命令: 5 pipreqs ./ --encoding=utf-8 --force
注意:这个库可以帮助你筛选出项目需要的python包,而不是当前环境的全部依赖
2. 执行pipreqs ./ --force指令即可。
3. 离线下载依赖包:
根据requirements.txt
导出需要的安装包
pip download -d PIPDIR -r requirements.txt -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
-d指定导出的文件夹
-r指定根据哪一个文件导出
-i表示使用阿里源(当然可以使用其他国内源啊)
--trusted-host表示信任主机
更多配置请参考:https://pip.pypa.io/en/stable/cli/pip_download/#options
有几个常用配置:
–platform:指定需要安装的平台,比如:linux_x86_64,如果在windows/mac上默认会下载windows/mac的安装包,在linux上是肯定安装不了的
–python-version:python的版本,默认与当前环境相同,如果值为3,则python版本为3.0.0, 若值为3.7,则python版本为3.7.0或3.7.3,最好根据python --version指定完整的版本号
注意:这里一定要添加--trusted-host,否则会报错:
WARNING: The repository located at mirrors.aliyun.com is not a trusted or secure host and is being ignored. If this repository is available via HTTPS we recommend you use HTTPS instead, otherwise you may silence this warning and allow it anyway with '--trusted-host mirrors.aliyun.com'. ERROR: Could not find a version that satisfies the requirement xxx==xxx (from versions: none) ERROR: No matching distribution found for xxx==xxx
4 进入新环境使用python安装依赖
根据自己的实际情况,把这个文件夹和requirements.txt
移动到新的环境中,然后使用:
pip install --no-index --find-links=PIPDIR -r requirements.txt # --find-links就是存放安装文件的目录 # -r是指按照requirements.txt这个文件去安装文件目录中找需要的安装包
本文来自博客园,作者:术科术,转载请注明原文链接:https://www.cnblogs.com/shukeshu/p/15676636.html