Python中的ConfigParser类,可以很容易读取文件中的配置,如在自动化测试的时候,测试地址,发送自动化邮件报告需要用到的邮箱信息等基础信息,都可以放在文件中然后进行获取默认配置数据。
存放数据的文件有默认的格式以及名称,为config.ini。数据格式如下
[URL]
homepage_url = https://www.baidu.com/
[mailInfo]
host = smtp.163 .com
account = 12345678@163 .com
password =12345678
最上面的为section,使用[section_name]进行表示,其中section_name可以任意取名称。
其下面的子项是key=value的形式,不需要任何引号。
然后使用python的ConfigParser类进行获取里面的数据,代码如下所示
import configparser
import os.path
def getConfig(section,key=None):
config = configparser.ConfigParser() #初始化一个configparser类对象
dir = os.path.dirname(os.path.dirname(__file__)) #获取当前文件的文件夹位置
file_path = dir+'\\config\\config.ini' #完整的config.ini文件路径
config.read(file_path,encoding='utf-8') #读取config.ini文件内容
if key!=None:
return config.get(section,key) #获取某个section下面的某个key的值
else:
return config.items(section) #或者某个section下面的所有值
if__name__=="__main__":
print(getConfig('URL','homepage_url')) #结果为 https://www.baidu..com/
print(getConfig('mailInfo')) #结果为[('host', 'smtp.163.com'), ('account', '12345678@163.com'), ('password', '12345678')]