confiparse遇到特殊字符的解析处理
一.背景:
confiparse类解析mysql密码时发现包含特殊字符时出现报错的情况:
配置文件如下:

代码如下:
import configparser
import os #读取配置
conf=configparser.ConfigParser() # 路径中使用斜杠不要使用反斜杠
path=os.path.abspath( "data.conf" )
# 加载配置文件
conf.read( path)
# 读取配置
host=conf.get( "mysql", "host" )
user=conf.get( "mysql", "user" )
password=conf.get( "mysql", "password" )
database=conf.get( "mysql", "database" ) print(password)
查看执行结果,报错如下:
configparser.InterpolationSyntaxError: '%' must be followed by '%' or '(', found: '%#=%ok@yes^?'

二、解决方案:
将代码内:configparser.ConfigParser() 修改为如下语句:
conf=configparser.RawConfigParser()
再次运行结果如下:

主要原因:RawConfigParser是最基础的INI文件读取类,ConfigParser、SafeConfigParser支持对%(value)s变量的解析,所以RawConfigParser不会产品转义的情况。
confiparse遇到特殊字符的解析处理的更多相关文章
- Shell脚本关于屏幕输出的字符进行颜色控制的问题
文本终端的颜色可以使用“ANSI非常规字符序列”来生成.举例: echo -e "\033[44;37;5m ME \033[0m COOL" 以上命令设置背景成为蓝色,前景白色, ...
- linux 的终端字体色和背景色的修改方法(三)
除了在窗口下修改,配置文件中修改外,还可以用shell来修改,此处为B shell linux BASH shell下设置字体及背景颜色 类型:转载 这篇文章主要介绍了linux BASH shell ...
- shell之echo与printf和颜色
在用户的bashrc中添加一行export来修改提示符.
- linux BASH shell设置字体与背景颜色
linux BASH shell下设置字体及背景颜色的方法. BASH shell下设置字体及背景颜色 echo -e "\e[31mtest\e[41m" \e[30m 将字 ...
- linux shell的输出效果修改方法(界面颜色)
文本终端的颜色可以使用“ANSI非常规字符序列”来生成.举例: echo -e "\033[44;37;5m ME \033[0m COOL" 以上命令设置背景成为蓝色,前景白色, ...
- shell中使用echo命令改变输出显示样式
文本终端的颜色可以使用“ANSI非常规字符序列”来生成.举例:echo -e "\033[44;37;5m ME \033[0m COOL" 以上命令设置背景成为蓝色,前景白色,闪 ...
- shell命令:echo命令详解
功能说明:显示文字. 语 法:echo [-ne][字符串] / echo [--help][--version] 补充说明:echo会将输入的字符串送往标准输出.输出的字符串间以空白字符隔开, 并在 ...
- Node.js框架 —— Express
一.安装express 1.需先安装express-generator npm install -g express-generator 2.安装express npm install -g expr ...
- Shell命令:echo 命令详解
http://blog.chinaunix.net/uid-27124799-id-3383327.html # echo命令介绍 功能说明:显示文字. 语 法:echo [-ne][字符串] / e ...
- Shell中echo改变输出显示样式
普通输出: echo '------------------------------------------------------' 输出的是系统默认的颜色和字体: 加上一些样式,看效果: echo ...
随机推荐
- 安卓之各种Adapter优劣分析
文章摘要 在 Android 开发中,适配器(Adapter)是一种非常重要的设计模式,它用于将数据与视图组件进行绑定.适配器可以帮助我们在不同的视图组件(如 ListView.GridView.Re ...
- 2024年 Kubernetes 四大趋势预测
Kubernetes 在生产环境中的复杂性已经成为常态,在2023年这个平台工程盛行的时代,容器管理的最大亮点可能在于其灵活性,然而在运维政策和治理等方面仍然存在诸多挑战.Kubernetes 最大的 ...
- Python——Html(内联框架<iframe>)
<iframe>(内联框架)是 HTML 中的一个标签,用于在当前文档中嵌入另一个文档.它提供了一种将一个 HTML 文档嵌套到另一个文档的方式,允许在一个页面中显示另一个页面的内容.以下 ...
- 【WALT】调度与负载计算(未更新完)
[WALT]调度与负载计算 代码版本:Linux4.9 android-msm-crosshatch-4.9-android12 注:本文中的任务主要指进程. @ 目录 [WALT]调度与负载计算 一 ...
- 调试分析Linux 0.00引导程序
Bochs虚拟机的配置文件 简介 Bochs 虚拟机的配置文件 描述待启动的虚拟机的配置,例如内存大小.启动镜像.网络功能.存储配置. Bochs运行后,会先查找配置文件,解析模拟器要虚拟的系统相关信 ...
- JAVAEE基础知识
JAVAEE基础知识 2018年3月,开源组织Eclipse基金会宣布,JavaEE(Enterprise Edition)被更名为JakartaEE,也就是9版本后改名Jakarta EE,也就是J ...
- Cesium中用到的图形技术——Computing the horizon occlusion point
译者注:本文翻译自Cesium官方博文<Computing the horizon occlusion point>,by KEVIN RING. 你厌倦了地平线剔除吗? 太好了,我也没有 ...
- 手把手教你写一个spring IOC容器
摘要:spring框架的基础核心和起点毫无疑问就是IOC,IOC作为spring容器提供的核心技术,成功完成了依赖的反转:从主类的对依赖的主动管理反转为了spring容器对依赖的全局控制.今天就带大家 ...
- 云小课 | 大数据融合分析:GaussDW(DWS)轻松导入MRS-Hive数据源
摘要:通过建立GaussDB(DWS)与MRS的连接,支持数据仓库服务SQL on Hadoop,以外表方式实现Hive数据的快捷导入,满足大数据融合分析的应用场景. 本文分享自华为云社区<[云 ...
- CANN 5.0硬核技术抢先看
摘要:2021年12月,CANN5.0版本也将与大家正式见面,通过软硬件协同优化,该版本将会实现训练性能再翻倍,凭实力展现AI领域的「中国速度」! 本文分享自华为云社区<CANN 5.0硬核技术 ...