python ConfigParser库的使用及遇到的坑


Posted in Python onFebruary 12, 2022

ConfigParser库的使用及遇到的坑

背景:这几天想在接口测试中增加logging打印功能,在testerHome正好发现有人分享自己的接口框架,看了之后其中用到ConfigParser,然后自己写了遇到一个坑,写下来用于备注吧。

首先就描述一下坑:

ConfigParser主要就是读写配置文件,文件格式包括.ini,.conf。

我是这么想的在本地新建.text文本格式,把配置书写进去然后修改成.ini或者.conf拖拽进eclispe中,然后read配置文件,一直报错,我一直都以为书写逻辑有问题。

实在没办法就删除配置文件,使用write()去写,然后read发现可以,一直不知道是什么原因。

第一,先介绍write方法

python ConfigParser库的使用及遇到的坑

首先是先实例化ConfigParser()这个类,然后增加section,我把理解一个标签,在这个标签下什么东西,当然可以添加多个标签,如图就是配置文件的截图:

python ConfigParser库的使用及遇到的坑

其中[time]和[place]就是2个不同的标签,其中各个标签下的内容用类似key-value的形式表示,这里就用到set(section,option,value)方法,section对应的就是标签,option对应就是key,value就是key对应的值。如果想多次多次只要多次调用set()方法即可,使用是一个section就可以。

第二:书写成功下面就是read

python ConfigParser库的使用及遇到的坑

同样也是先实例化ConfigParser()这个类,然后调用read(filenames)方法其中参数filenames是.conf的绝对路径(我看别人都只有文件名,我试了一下总是报错,不知道是伪代码还是什么,我还是觉得用绝对路径稳妥一些)。

如果想要读取section(就是我上面说的标签)就是用调用sections()就是把配置文件所有section用列表格式返回,如图:

python ConfigParser库的使用及遇到的坑

读取值就使用options(section),因为是配置文件所以key我觉得不会重复这个取出来还要通过列表去找,没必要增加复杂度

大概就这些吧,当然还有删除一些操作,大家可以查看一下ConfigParser()的源码,或者查看别人博客,有些的很多了,我就不写了,打算这几天吧logging这个模块也加进去看看什么效果,回头有啥坑在写吧。

configparser.NoSectionError: No section: '****'

configparser.NoSectionError: No section: '****'解决办法,Apache无法识别相对路径

问题描述

Python使用configparser读取配置文件main.conf,使用python 文件名.py命令启动程序无报错;若将程序部署到Apache服务器上,则报错错:configparser.NoSectionError: No section: ‘****’

python ConfigParser库的使用及遇到的坑

原因

Apache无法识别相对路径,需填写绝对路径

解决方案

config.read()读取绝对路径

import configparser
import os, sys
parent_dir = os.path.dirname(os.path.abspath(__file__))
config = configparser.ConfigParser()
config.read(parent_dir + "/main.conf")   #读取配置文件采用绝对路径

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python 返回汉字的汉语拼音
Feb 27 Python
python基于mysql实现的简单队列以及跨进程锁实例详解
Jul 07 Python
Python语言的12个基础知识点小结
Jul 10 Python
python循环监控远程端口的方法
Mar 14 Python
Python首次安装后运行报错(0xc000007b)的解决方法
Oct 18 Python
Python实现按学生年龄排序的实际问题详解
Aug 29 Python
基于Django模板中的数字自增(详解)
Sep 05 Python
python机器学习理论与实战(六)支持向量机
Jan 19 Python
Python命令行解析模块详解
Feb 01 Python
值得收藏的10道python 面试题
Apr 15 Python
Python Web框架之Django框架文件上传功能详解
Aug 16 Python
Python函数必须先定义,后调用说明(函数调用函数例外)
Jun 02 Python
Python制作春联的示例代码
Jan 22 #Python
Python制作表白爱心合集
基于Python实现一个春节倒计时脚本
Jan 22 #Python
详解Python如何批量采集京东商品数据流程
Jan 22 #Python
用Python实现屏幕截图详解
Jan 22 #Python
Python实现学生管理系统并生成exe可执行文件详解流程
Jan 22 #Python
django中websocket的具体使用
Jan 22 #Python
You might like
解析PHP之提取多维数组指定列的方法
2017/01/03 PHP
JavaScript中的私有成员
2006/09/18 Javascript
如何用javascript判断录入的日期是否合法
2007/01/08 Javascript
Tab页界面 用jQuery及Ajax技术实现(php后台)
2011/10/12 Javascript
Javascript验证上传图片大小[前台处理]
2014/07/18 Javascript
一个检测表单数据的JavaScript实例
2014/10/31 Javascript
原生Ajax 和jQuery Ajax的区别示例分析
2014/12/17 Javascript
原生javascript实现图片按钮切换
2015/01/12 Javascript
jQuery实现鼠标经过提示信息的地图热点效果
2015/04/26 Javascript
js操作数据库实现注册和登陆的简单实例
2016/05/26 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
2016/06/14 Javascript
jQuery-mobile事件监听与用法详解
2016/11/23 Javascript
微信小程序开发(二)图片上传+服务端接收详解
2017/01/11 Javascript
jQuery中DOM节点删除之empty与remove
2017/01/20 Javascript
jQuery模拟淘宝购物车功能
2017/02/27 Javascript
jquery.validate表单验证插件使用详解
2017/06/21 jQuery
详解基于Vue+Koa的pm2配置
2017/10/24 Javascript
微信小程序登录按钮遮罩浮层效果的实现方法
2018/12/16 Javascript
vue多次循环操作示例
2019/02/08 Javascript
详细教你微信公众号正文页SVG交互开发技巧
2019/07/25 Javascript
如何在JavaScript中使用localStorage详情
2021/02/04 Javascript
python进阶教程之动态类型详解
2014/08/30 Python
Python3实现转换Image图片格式
2018/06/21 Python
对Python中列表和数组的赋值,浅拷贝和深拷贝的实例讲解
2018/06/28 Python
Python 变量类型详解
2018/10/10 Python
keras 使用Lambda 快速新建层 添加多个参数操作
2020/06/10 Python
详解python metaclass(元类)
2020/08/13 Python
Python项目实战之使用Django框架实现支付宝付款功能
2021/02/23 Python
Tom Dixon官网:英国照明及家具设计和制造公司
2019/03/01 全球购物
在数据文件自动增长时,自动增长是否会阻塞对文件的更新
2014/05/01 面试题
关于运动会的广播稿(10篇)
2014/09/12 职场文书
死亡证明书样本说明
2014/10/18 职场文书
教师党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
教师求职自荐信
2015/03/26 职场文书
新闻稿标题
2015/07/18 职场文书
利用Python实现Picgo图床工具
2021/11/23 Python