mysql xml参数化_配置文件+正则参数化+mysql数据库封装

配置文件  通过configpaser 模块进行读取

c6a349c1f7d95240f01dad0bfbef72fe.png

import configparser

class ReadConfig:

"""

完成配置文件的读取

"""

def __init__(self):

self.config = configparser.ConfigParser()

self.config.read(contants.global_file) # 先加载global

switch = self.config.getboolean(‘switch‘, ‘on‘)

if switch: # 开关打开的时候,使用online的配置

self.config.read(contants.online_file, encoding=‘utf-8‘)

else: # 开关关闭的时候,使用test的配置

self.config.read(contants.test_file, encoding=‘utf-8‘)

def get(self, section, option):

return self.config.get(section, option)

config = ReadConfig()

正则是通过 re 模块

83c78a5815a769e3e0e36fb1fc2752db.png

def DoRe(data):

"""

1.用正则表达式来匹配测试数据中的指定字符

2.根据指定字符获取到配置文件中对应的值

3.然后进行替换

"""

pattern = ‘#(.*?)#‘ # 正则表达式 匹配组当中多次或者最多一次单个字符

while re.search(pattern, data):

search = re.search(pattern, data) # 从任意位置开始找,找第一个就返回Match object, 如果没有找None

group = search.group(1) # 拿到参数化的KEY

value = config.get_value(‘data‘, group) # 根据KEY取配置文件里面的值

"""

记得替换后的内容,继续用data接收

"""

data = re.sub(pattern, value, data, count=1) # 查找替换,count查找替换的次数

print(data)

return data

if __name__ == ‘__main__‘:

a=DoRe(‘{"mobilephone":"#user_mobile#","pwd":"#user_password#"}‘)

print(a)

数据库通过pymsql

class DoMysql:

"""

初始化:

1.从配置文件获取到数据库的连接信息

2.建立光标

方法:

1.执行sql语句,获取一个或者全部数据

2.关闭光标和数据库

"""

def __init__(self):

self.mysql = pymysql.connect(host=config.get_value(‘testdb‘, ‘host‘),

port=int(config.get_value(‘testdb‘, ‘port‘)),

user=config.get_value(‘testdb‘, ‘user‘),

password=config.get_value(‘testdb‘, ‘password‘),

db=config.get_value(‘testdb‘, ‘db‘),

charset=config.get_value(‘testdb‘, ‘charset‘))

#self.cursor = self.mysql.cursor(cursor=pymysql.cursors.DictCursor) # 查询的数据以键值对返回

self.cursor = self.mysql.cursor() # 值返回查询的结果

def fetch_one(self, sql):

self.cursor.execute(sql)

return self.cursor.fetchone()

def fetch_all(self, sql):

self.cursor.execute(sql)

return self.cursor.fetchall()

def close(self):

self.cursor.close()

self.mysql.close()

if __name__ == ‘__main__‘:

result = DoMysql().fetch_all(‘select id from loan where memberid=241;‘)

print(result)

原文:https://www.cnblogs.com/XXQQ123/p/11539700.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值