南宁网站设计方法太原搜索引擎优化

pingmian/2025/10/7 15:55:22/文章来源:
南宁网站设计方法,太原搜索引擎优化,代理平台app,建设部网站监理注销查询此文分享一个python脚本,用于管理和快速链接到ssh服务器。 效果演示 🔥完整演示效果 👇第一步,显然,我们需要选择功能 👇第二步,确认 or 选择ssh服务器,根据配置文件中提供的ssh信息,有以下情况 👇场景一,只有一个候选ssh服务器,则脚本会提示用户是否确认链…此文分享一个python脚本,用于管理和快速链接到ssh服务器。 效果演示 🔥完整演示效果 👇第一步,显然,我们需要选择功能 👇第二步,确认 or 选择ssh服务器,根据配置文件中提供的ssh信息,有以下情况 👇场景一,只有一个候选ssh服务器,则脚本会提示用户是否确认链接到该ssh服务器 👇场景二,如果有多个候选ssh服务器,则脚本会提示用户选择目标ssh服务器 👇场景三,如果我们不划计登录配置中所列的ssh服务器,我们亦可以指定其它的ssh接口 👇第三步,当我们选择、确认或者指定了ssh服务器后,即可登入ssh服务器 配置文件 我们需要在配置文件中记录和管理一些配置信息,例如上文中提到的ssh登录信息,例如用于文档搜索的everything接口信息等。这是一个json文档(cfg.json),如下👇: { "ssh接口列表":[{"主机名称":"virtualBox","主机地址":"192.168.56.1","端口号":22,"用户名":"dyy","密码":"123456"}], "everythingIP":"127.0.0.1", "everythingPort":"22" }或者,可以直接下载文档 python脚本 👇以下脚本,提供了以上👆所演示的功能 # -*- coding:UTF-8 -*- """ @author: dyy @contact: douyaoyuan@126.com @time: 2023/11/16 22:37 @file: ssh工具.py @desc: 脚本提供了ssh登录,ssh文档上传,ssh文档下载,ssh公钥配置等功能,以及优良的用户体验 """# region 引入必要的依赖 import os from enum import Enum import json模块名 = 'DebugInfo' try:from DebugInfo.DebugInfo import * except ImportError as impErr:print(f"尝试导入 {模块名} 依赖时检测到异常:{impErr}")print(f"尝试安装 {模块名} 模块:")try:os.system(f"pip install {模块名}")except OSError as osErr:print(f"尝试安装模块 {模块名} 时检测到异常:{osErr}")exit(0)else:try:from DebugInfo.DebugInfo import *except ImportError as impErr:print(f"再次尝试导入 {模块名} 依赖时检测到异常:{impErr}")exit(0)模块名 = 'paramiko' try:import paramiko except ImportError as impErr:print(f"尝试导入 {模块名} 依赖时检测到异常:{impErr}")print(f"尝试安装 {模块名} 模块:")try:os.system(f"pip install {模块名}")except OSError as osErr:print(f"尝试安装模块 {模块名} 时检测到异常:{osErr}")exit(0)else:try:import paramikoexcept ImportError as impErr:print(f"再次尝试导入 {模块名} 依赖时检测到异常:{impErr}")exit(0)模块名 = 'difflib' try:import difflib # 需要安装 difflib 模块,以支持字符差异对比操作 except ImportError as impErr:print(f"尝试导入 {模块名} 依赖时检测到异常:{impErr}")print(f"尝试安装 {模块名} 模块:")try:os.system(f"pip install {模块名}")except OSError as osErr:print(f"尝试安装模块 {模块名} 时检测到异常:{osErr}")exit(0)else:try:import difflibexcept ImportError as impErr:print(f"再次尝试导入 {模块名} 依赖时检测到异常:{impErr}")exit(0)# endregion# 定义一个 命令行参数类,用于解析和记录命令行参数 class 命令行参数类(入参基类):def __init__(self):super().__init__()self._添加参数('srcDir', str, '引用的路径')self._添加参数('srcDoc', str, '引用的文档')self._添加参数('everythingIP', str, 'everything HTTP 服务地址', '127.0.0.1')self._添加参数('everythingPort', str, 'everything HTTP 服务端口', '22')# 添加定制属性self.ssh接口列表: list[ssh接口类] = []# region 访问器@propertydef jsonCfg(self) - str:if 'jsonCfg' in self._参数字典:return self._参数字典['jsonCfg'].值else:return ''@jsonCfg.setterdef jsonCfg(self, 值: str):if 'jsonCfg' in self._参数字典:self._参数字典['jsonCfg'].值 = str(值)@propertydef srcDir(self) - str:if 'srcDir' in self._参数字典:return self._参数字典['srcDir'].值else:return ''@srcDir.setterdef srcDir(self, 值: str):if 'srcDir' in self._参数字典:self._参数字典['srcDir'].值 = str(值)@propertydef srcDoc(self) - str:if 'srcDoc' in self._参数字典:return self._参数字典['srcDoc'].值else:return ''@srcDoc.setterdef srcDoc(self, 值: str):if 'srcDoc' in self._参数字典:self._参数字典['srcDoc'].值 = str(值)@propertydef everythingIP(self) - str:if 'everythingIP' in self._参数字典:return self._参数字典['everythingIP'].值else:return ''@everythingIP.setterdef everythingIP(self, 值: str):if 'everythingIP' in self._参数字典:self._参数字典['everythingIP'].值 = str(值)@propertydef everythingPort(self) - str:if 'everythingPort' in self._参数字典:return self._参数字典['everythingPort'].值else:return ''@everythingPort.setterdef everythingPort(self, 值: str):if 'everythingPort' in self._参数字典:self._参数字典['everythingPort'].值 = str(值)# endregion# region ssh候选列表def 解析Json(self,jsonCfg: str = None,encoding: str = 'utf-8',画板: 打印模板 = None):"""从指定的json文档中(如果不指定,则从 jsonCfg 参数指定的json文档中)读取配置参数,将值赋值给同名的命令行参数:param jsonCfg: 可以指定jsonCfg文档:param encoding: 可以指定jsonCfg文档的编码格式,默认为 utf-8:param 画板: 提供消息打印渠道:return: None"""画板 = 画板 if isinstance(画板, 打印模板) else 打印模板()画板.执行位置(self.__class__, self.解析Json)if not jsonCfg:if 'jsonCfg' in self._参数字典.keys():jsonCfg = self._参数字典['jsonCfg'].值jsonCfg = str(jsonCfg if jsonCfg else '').strip()if not jsonCfg:画板.提示调试错误('jsonCfg 路径无效')return Noneif not os.path.isfile(jsonCfg):画板.提示调试错误(f'jsonCfg 不是有效的 json 文件路径: {jsonCfg}')return Noneif not jsonCfg.endswith('.json'):画板.提示调试错误(f'jsonCfg 不是 json 格式的文件: {jsonCfg}')画板.调试消息(f'待解析的 jsonCfg 文件是: {jsonCfg}')encoding = str(encoding if encoding else 'utf-8').strip()jsonDic: dicttry:with open(jsonCfg, 'r', encoding=encoding) as f:jsonDic = json.load(f)except Exception as openExp:画板.提示调试错误(f'打开并读取 json 文档时遇到错误: {openExp}')jsonDic = {}if not jsonDic:画板.提示调试错误(f'未解析到有效的 json 内容: {jsonCfg}')return NonejsonDic字典: dict = {}for 键, 值 in jsonDic.items():# 去除键前后的空格键 = str(键).strip()if 键:jsonDic字典[键] = 值已匹配的参数: dict[str, 入参基类._参数结构类] = {}未匹配的参数: dict[str, 入参基类._参数结构类] = {}for 参数 in self._参数字典.values():if 参数.名称 in jsonDic字典:参数.值 = jsonDic字典[参数.名称]if str(参数.值).strip() == str(jsonDic字典[参数.名称]).strip():已匹配的参数[参数.名称] = 参数if 'ssh接口列表' in jsonDic字典.keys() and jsonDic字典['ssh接口列表']:# 解析ssh接口配置ssh接口列表 = jsonDic字典['ssh接口列表']参数 = 命令行参数类._参数结构类(名称='ssh接口列表')参数.值 = ssh接口列表已匹配的参数['ssh接口列表'] = 参数for 接口 in ssh接口列表:ssh接口: ssh接口类 = ssh接口类()if '主机名称' in 接口:ssh接口.主机名 = 接口['主机名称']if '主机地址' in 接口:ssh接口.主机地址 = 接口['主机地址']if '端口号' in 接口:ssh接口.端口号 = 接口['端口号']if '用户名' in 接口:ssh接口.用户名 = 接口['用户名']if '密码' in 接口:ssh接口.密码 = 接口['密码']self.ssh接口列表.append(ssh接口)for 键, 值 in jsonDic字典.items():if 键 not in 已匹配的参数.keys():这个参数: 入参基类._参数结构类 = 入参基类._参数结构类(名称=键,类型=str,提示='这是 jsonCfg 中未匹配成功的参数',默认值=值)未匹配的参数[键] = 这个参数if 画板.正在调试 and (已匹配的参数 or 未匹配的参数):画板.准备表格()if 已匹配的参数:画板.添加一行('参数名', '参数类型', '参数值', '提示').修饰行(青字)for 参数 in 已匹配的参数.values():画板.添加一行(参数.名称, 参数.类型, 参数.值, 参数.提示)if 未匹配的参数:画板.添加分隔行(提示文本='以下参数未匹配成功', 修饰方法=红字, 适应窗口=True)for 参数 in 未匹配的参数.values():画板.添加一行(参数.名称, 参数.类型, 参数.值, 参数.提示)画板.展示表格()# endregionclass 文档操作记录类:def __init__(self,旧文档: str = None,新文档: str = None):self.__旧文档: str = 旧文档self.__新文档: str = 新文档self.__带标注的旧文档: str = ''self.__带标注的新文档: str = ''# region 访问器@propertydef 旧文档(self) - str:return self.__旧文档@旧文档.setterdef 旧文档(self, 文档: str):文档 = str(文档 if 文档 else '').strip()self.__旧文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/89447.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

旅游网站的建设内容东莞松山湖东华医院

11月29日,中国信通院 2023 年下半年“可信数据库”评估评测结果正式发布,由 KaiwuDB研发的开务数据库系统 KaiwuDB V2.0 达到信通院时序数据库性能、稳定性测试标准。 至此,KaiwuDB已完成时序数据库基础能力、性能、稳定性全项评测&#xff…

东莞高端网站建设费用网站设置银联密码

73. 矩阵置零 **题目:**给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 题目链接&#xff1a;矩阵置零 class Solution {public void setZeroes(int[][] matrix) {Stack<int[]> mapofzerone…

百度不做网站外链是什么原因新老网站做301跳转

在Android中使用ProgressBar显示进度 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01;今天我们将探讨如何在Android应用中使用ProgressBar来显示进度。ProgressB…

浙江省建设厅官方网站传媒宣传片制作

目录 主要流程&#xff1a; 具体实现&#xff1a; 主要流程&#xff1a; &#xff08;特殊&#xff09;1、如果你需要返回json格式字符串&#xff0c;那么你首先需要编写相应的处理器&#xff0c;如果不需要则可直接写配置类 2、编写配置类 3、编写认证授权相关的mapper…

不错的建设工程人员查询汕头seo服务

1、问题 google第三方登录,如果已经登录过的账号点击可以登录&#xff0c;但是添加新的谷歌账号的时候提示&#xff0c;错误码为12501&#xff0c;整个人都不好了。 2、解决办法 AndroidManifest.xml里加上了如下信息 <meta-data android:name"com.google.android.g…

建网站公司用什么网站程序做宴会网站

题目链接。 分析&#xff1a; 《算法竞赛入门经典——训练指南》上的一道例&#xff08;水&#xff09;题&#xff0c;map的应用&#xff0c;个人感觉代码中注释掉的那一句没有什么意义&#xff0c;就注释掉了&#xff0c;提交确实也对了。 map的小知识点&#xff08;总结自c p…

网站怎么做百度快照logo安顺公司做网站

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK实现相机图像转换由Mono10转换为Mono8&#xff08;C&#xff09; Baumer工业相机Baumer工业相机的Mono10转换为Mono8图的技术背景在NEOAPI SDK里实现相机图像由Mono10转换为Mono8格式 工业相机通过NEOAPI SDK实现相机图像转换的优…

电子商务网站建设可行性分析无锡网站制作公司报价

本文介绍基于NM24C08的EEPROM仿真设计&#xff08;完整仿真源文件及代码见文末链接&#xff09; 其中NM24C08是标准的2线总线接口的串行EEPROM&#xff0c;开机画面在LCD12864上显示 仿真图如下 仿真运行视频 Proteus仿真--基于NM24C08的EEPROM仿真设计 附完整Proteus仿真资料…

政务网站建设经验做法英文网站 icp备案号

51单片机DS1302万年历时钟温度12864显示仿真 1.主要功能&#xff1a;2.仿真3. 程序代码4. 设计报告5. 设计资料内容清单 51单片机DS1302万年历时钟温度12864显示仿真( proteus仿真程序报告讲解视频&#xff09; 仿真图proteus7.8及以上 程序编译器&#xff1a;keil 4/keil 5 …

贵阳网站推广¥做下拉去118cr网页制作动画怎么做

Python是一种广泛使用的高级编程语言&#xff0c;以其简洁、易读和强大的功能而著称。近年来&#xff0c;Python使用人数不断增加。 Python有以下优点&#xff1a; 语法简洁 Python的语法简洁易懂&#xff0c;使得编写代码变得容易和高效。 跨平台 Python支持多种操作系统…

在英特尔上建设网站可选择的方案有单网站建设

“我有一个紧急视频会议&#xff0c;但是关键时刻我的笔记本电脑摄像头居然打不开了&#xff0c;真的让我很崩溃。有什么方法可以快速解决这个问题吗&#xff1f;非常感谢&#xff01;” 在互联网时代&#xff0c;电脑对我们来说非常重要。而借助电脑摄像头与朋友交流或者与同事…

如何写网站开发需求网站开发教程H5

MySQL代表了开源数据库的快速发展。 从2004年前后的Wiki、WordPress等轻量级Web 2.0应用起步&#xff0c;到2010年阿里巴巴在电商及支付场景大规模使用MySQL数据库&#xff0c;再到2012年开始阿里云RDS for MySQL为成千上万家客户提供可靠的关系数据库服务&#xff0c;阿里云R…

网站建设运营协议书公司注册网站有什么好处

前端jd要求&#xff1a;了解一门后端开发语言优先 解决方案之Node.js 前言常见的后端开发语言一、什么是 Node.js二、学习 Node.js 的前置知识三、学习 Node.js 的步骤1、Node.js 的安装2、Node.js 的基本语法和 API模块导入和导出文件读写操作HTTP 服务器命令行参数 3、Node.j…

建设保障房网站首页网站支付功能报价

Author&#xff1a;rab 目录 前言一、构建缓存二、Pull 缓存总结 前言 首先我们要清楚&#xff0c;Docker 的镜像结构是分层的&#xff0c;镜像本身是只读的&#xff08;不管任何一层&#xff09;&#xff0c;当我们基于某镜像运行一个容器时&#xff0c;会有一个新的可写层被…

做五金国际网站哪个好公司网站抬头用什么软件做

首选得确定Jenkins的安装完整&#xff0c;还有插件的安装&#xff0c;除默认插件&#xff0c;此处必备插件&#xff1a;Publish Over SSH&#xff0c;SSH plugin&#xff0c;因为我源码在gitlab所以关于gitlab的插件我也安装了&#xff0c;看各自的情况选择安装。然后到系统管理…

前端做网站使用的软件工具广州网站建设技术

C程序设计语言 &#xff08;第二版&#xff09; 练习 4-5 练习 4-5 给计算器程序增加访问sin、exp与pow等库函数的操作。有关这些库函数的详细信息&#xff0c;参见附录B.4节中的头文件<math.h>。 注意&#xff1a;代码在win32控制台运行&#xff0c;在不同的IDE环境下…

做搜狗手机网站优化点积分商城平台

目录 1. 程序的翻译环境和执行环境 2. 详解编译链接 2.1 翻译环境 2.2 编译本身也分为几个阶段&#xff1a; 2.3 运行环境 3. 预处理详解 3.1 预定义符号 3.2 #define 3.2.1 #define 定义标识符 3.2.2 #define 定义宏 3.2.3 #define 替换规则 3.2.4 #和## 1. 程序的翻译环境和执…

站长是什么职位建设一个私人视频网站

2012年我入职TCL&#xff0c;在TCL我体会到了团队建设的文化&#xff0c;也正是经历了那段职场&#xff0c;我明白了很多「可意味不可言传」。那时候我们经常五十成群出去吃饭、喝酒、唱歌&#xff1b;上学那会我很不喜欢团队活动&#xff0c;特别是室内的活动&#xff0c;总感…

深圳市南山网站建设上海住建部网站

目录 一、目标1&#xff1a;调用exe文件 二、目标2&#xff1a;调用exe打开文件 一、目标1&#xff1a;调用exe文件 1、subprocess 模块允许在 Python 中启动一个新的进程&#xff0c;并与其进行交互 2、subprocess.run() 函数来启动exe文件 3、subprocess.run(["文件路…

阅读网站建设中国建设教育协会是个什么网站

根据sql解析获取到表到表, 字段到字段间的关系,即血缘关系。实际上这是从sql文本获取到数据流的过程。 大致步骤如下&#xff1a; 1.sql文本进行词法分析 2.sql语法分析获取到AST抽象语法树 3.访问AST抽象语法树根据语法结构推测出数据的流向,例如create as select from 这种结…