一、下载vscode
问题:vscode没有python扩展不能编写python。 解决:需要下载.vsix文件,传到内网。通过官网下载python扩展文件。
问题:内网系统版本为win7,最高只支持python3.8,vscode版本也较低,版本不匹配。 解决:open-vsx.org/ 这个开源的扩展注册表,提供了大量vscode扩展,饼允许手动下载扩展的安装文件,且有历史版本,找到对应老版本解决。
二、配置环境
问题:断网的情况下显然不能用pip直接install什么包下来了。 解决:在外网把fastapi对应3.8的版本确定,去内网仓库找相应的.whl文件安装。
问题:提示没有对应版本的其他包。 解决:在外网配置对应环境的python版本,通过pip的方式把fastapi安装好,再导出离线包去内网安装。 (一开始还查到要装个什么pipreqs、pip-tools,后来发现完全没必要,用pip自带命令就好,因为又被版本匹配卡住了。)
- 生成requirements.txt
$ pip freeze > requirements.txt
- 导出离线包
$ pip download -r requirements.txt -d /path/to/destination
将离线包导出到对应路径。
- 内网安装
$ pip wheel -r requirements.txt -w /path/to/destination
然而,失败。可气的是这种方式没网都要去网上找,所以
pip install -r requirements.txt --no-index --find-links=file:///path/to/whl/directory
这样才能用离线包去安装,其中 /path/to/whl/directory
是包含 .whl
文件的目录的路径。这个命令会读取 requirements.txt
文件,并安装其中列出的包,同时使用 --no-index
参数告诉 pip 不要从网络上查找包,而是直接从本地的 .whl
文件安装。--find-links
参数用于指定 .whl
文件所在的目录。
这样,pip 就会按照 requirements.txt
文件中列出的包的顺序,从本地安装对应的 .whl
文件。