import pymysql
import redis
import requests
import hashlib
import os
from lib.path import APPREPORT
class MyMysql(object):
def __init__(self,host,port,user,password,db,charset=‘utf8‘):
self.__host = host
self.port = port
self.user = user
self.password = password
self.db = db
self.charset = charset
self.__get_cur()
def __get_cur(self):
try:
self.con = pymysql.connect(host = self.__host, port = self.port, user = self.user,
password = self.password, db = self.db, charset = self.charset)
except Exception as e:
print(‘这里出错了,错误信息是:%s‘ % e)
else:
self.cur = self.con.cursor()
def select_sql(self,sql):
try:
self.cur.execute(sql)
except Exception as e:
print(‘sql执行失败:%s‘ % e)
else:
return self.cur.fetchall()
def other_sql(self,sql):
try:
self.cur.execute(sql)
except Exception as e:
print(‘sql执行失败:%s‘ % e)
else:
self.con.commit()
def close(self):
self.cur.close()
self.con.close()
class MyRedis(object):
def __init__(self,host,port,password):
self.pool = redis.ConnectionPool(host = host,port = port,password = password)
self.r = redis.Redis(connection_pool = self.pool)
def get(self,k):
return self.r.get(k)
def set(self,k,v):
self.r.set(k,v)
def my_request(method,url,data): # 返回结果函数
try:
if method.upper() == ‘GET‘:
r = requests.get(url,data).json()
else:
r = requests.post(url,data).json()
except Exception as e:
return ‘出错了,错误是:%s‘ % e
return r
def my_md5(st): # 加密函数
SECRET_KEY = ‘strlijljk3490;;;dsf43‘
st = str(st) + SECRET_KEY
md = hashlib.md5()
md.update(st.encode())
return md.hexdigest()
def get_newreport():
# html_path = os.path.join(APPREPORT, ‘html‘)
all_report = os.listdir(APPREPORT)
file_name = all_report[1]
abs_path = os.path.join(APPREPORT,file_name)
return abs_path
def remove_report():
# html_path = os.path.join(APPREPORT,‘html‘)
all_report = os.listdir(APPREPORT)
for report in all_report:
if report.endswith(‘.html‘):
abs_path = os.path.join(APPREPORT, report)
os.remove(abs_path)
# my_mysql = MyMysql(**MYSQL_INFO)
# my_redis = MyRedis(**REDIS_INFO)
AppUi自动化框架tools.py代码