在一台支持具有公网访问Windows机器(Linux理论上可以套用该方式)打开CMD窗口执行命令
D:\python\parmiko> pip download -d ./dependency paramiko
下载成功后,D盘的python\parmiko\dependency下会出现多个whl文件
输入以下命令将这些文件名写入至requirements.txt中
D:\python\parmiko\dependency> dir ./ > requirements.txt
打开requirements.txt将requirements.txt那一行去除
目录: D:\python\parmiko\dependency Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 2023/3/20 11:48 152930 bcrypt-4.0.1-cp36-abi3-win_amd64.whl -a---- 2023/3/20 11:48 179001 cffi-1.15.1-cp311-cp311-win_amd64.whl -a---- 2023/3/20 11:48 2454252 cryptography-39.0.2-cp36-abi3-win_amd64.whl -a---- 2023/3/20 11:48 211238 paramiko-3.1.0-py3-none-any.whl -a---- 2023/3/20 11:48 118697 pycparser-2.21-py2.py3-none-any.whl -a---- 2023/3/20 11:48 212141 PyNaCl-1.5.0-cp36-abi3-win_amd64.whl
然后将D盘的python\parmiko\dependency该目录下所以文件上传至离线的局域网机器当中
安装
pip install --no-index --find-link=./ -r requirements.txt
如果版本对上的话,正常是能够安装完成的,但是此时出现报错
ERROR:xxx.whl is not a supported wheel on this platform
比如安装cryptography-38.0.1-cp36-abi3-win_amd64.whl
可以查看类似“cp37-cp37m-win_amd64”这样的信息,主要包括3块,cp37、cp37m、win_amd64
正常情况下,只要再去下载cp37对应的版本即可,然而我遇到了没有cp37的版本,最新的只有cp36的版本,那要如何做呢?
很简单的方式,将cryptography-38.0.1-cp36-abi3-win_amd64.whl,直接将文件名中的cp36改成cp37即可,然后继续安装,但还是出现了同样的问题,这时可以将abi3改成none即可,最终改成cryptography-38.0.1-cp37-none-win_amd64.whl,这时再去安装就能安装成功了。
思考
pip的第三方包很不可思议,可以直接修改包的版本,然后就能安装成功,主要涉及三个(cp37, none, any),支持这种方式来修改,也就是将cp36改成cp37,abi3改成none,如果还不行,可以将win_amd64改成any
到此,按照上边的方式,就可以安装成功
————————————————
版权声明:本文为CSDN博主「行走_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/chenlibao0823/article/details/127328906