服务器建站教程,wordpress wap html 博客系统,家具网站素材,做ppt的网站有哪些文章目录 一、问题二、解决方法三、代码实现 一、问题
内网安装第三方包的应用场景#xff0c;一般是一些需要在没网的环境下进行开发的情况。这些环境一般仅支持本地局域网访问#xff0c;所以只能在不下载任何第三方包的情况下艰难开发。 二、解决方法
将当前应用依赖的第… 文章目录 一、问题二、解决方法三、代码实现 一、问题
内网安装第三方包的应用场景一般是一些需要在没网的环境下进行开发的情况。这些环境一般仅支持本地局域网访问所以只能在不下载任何第三方包的情况下艰难开发。 二、解决方法
将当前应用依赖的第三方包提前下载到本地拷贝到单机环境下安装但是不能一个个下载安装那样效率很低具体参考以下代码如有更好的办法希望大佬指点。 三、代码实现
import os
import timedef download_env_package(package_dir):下载当前虚拟环境已安装的第三方包的whl到本地:return:requirmenets_local_path f./requirements_local__{time.time()}.txtif not os.path.exists(package_dir): os.mkdir(package_dir)# 将虚拟环境的包信息打印到 requirements.txt 中cmd_freeze fpip freeze {requirmenets_local_path}os.system(cmd_freeze)time.sleep(2)# 下载 requirements.txt 中的第三方包到本地cmd_download fpip download -r {requirmenets_local_path} -d {package_dir}print(cmd_download)os.system(cmd_download)# 删除缓存的安装包文件os.remove(requirmenets_local_path)def install_local_packages(package_dir):安装本地第三方包:return:package_path_list [os.path.join(package_dir, name) for name in os.listdir(package_dir)]print(---------------------安装列表---------------------)for pc in package_path_list:print(pc)print(---------------------安装列表---------------------)# cmd_env_list vcmd_install_list pip install.split( )for idx, pc in enumerate(package_path_list):# print(f当前进度 {idx1} / {len(package_path_list)})cmd_install_list.append(pc)os.system( .join(cmd_install_list))if __name__ __main__:# 指定第三方包whl文件的存放目录package_dir ../package_cache# 下载# 此方法在有网的地方执行# 将当前虚拟环境下依赖的第三方包whl文件下载到指定目录download_env_package(package_dir)# 下载后将此脚本和下载好的第三方包目录一并复制到没网的机器上执行安装方法 # 安装# 此方法在没网的地方执行# 将指定目录下的whl文件安装到当前虚拟环境install_local_packages(package_dir)