如何在requirements.txt中指定本地归档模块及whl文件?
在requirements.txt中指定本地whl文件的方法
要在requirements.txt里指定从本地whl文件安装Awswrangler、Pyyaml、Boto3、Pandas,只需按照包名 @ 文件路径的格式编写即可,具体分以下几种场景:
1. whl文件与requirements.txt在同一目录
直接写whl文件名即可,示例如下:
awswrangler @ ./awswrangler-3.4.0-py3-none-any.whl pyyaml @ ./PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.whl boto3 @ ./boto3-1.34.0-py3-none-any.whl pandas @ ./pandas-2.1.4-cp311-cp311-manylinux_2_17_x86_64.whl
注意:替换成你实际拥有的whl文件名(版本号、平台标识需匹配你的Python环境和系统)
2. whl文件在子目录中
如果whl都放在比如./local_wheels/这样的子目录下,写相对路径即可:
awswrangler @ ./local_wheels/awswrangler-3.4.0-py3-none-any.whl pyyaml @ ./local_wheels/PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.whl boto3 @ ./local_wheels/boto3-1.34.0-py3-none-any.whl pandas @ ./local_wheels/pandas-2.1.4-cp311-cp311-manylinux_2_17_x86_64.whl
3. 使用绝对路径
如果需要指定固定的绝对路径,格式为file:///开头的完整路径:
- Linux/macOS示例:
awswrangler @ file:///home/yourname/wheels/awswrangler-3.4.0-py3-none-any.whl pyyaml @ file:///home/yourname/wheels/PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.whl
- Windows示例:
awswrangler @ file:///C:/Users/yourname/wheels/awswrangler-3.4.0-py3-none-any.whl pyyaml @ file:///C:/Users/yourname/wheels/PyYAML-6.0.1-cp311-cp311-win_amd64.whl
关键注意事项
- 确保whl文件的版本、Python版本标识(如cp311对应Python3.11)、系统架构(如manylinux、win_amd64)与你的运行环境完全匹配,否则会安装失败
- 安装时依然使用常规命令:
pip install -r requirements.txt,pip会优先从本地whl文件安装,不会去PyPI下载
内容的提问来源于stack exchange,提问作者dewdrops
相关产品推荐
相关产品推荐

