封装数据库
class db_mysql(object):
# 设置常用默认值
def __init__(self, host='192.168.0.111', user='Hredu', password='Hredu123@', database='happyrun', charset='utf8'):
self.host = host
self.user = user
self.password = password
self.database = database
self.charset = charset
# 连接数据库
def connetdb(self):
self.connet = pymysql.connect(host=self.host, user=self.user, password=self.password, database=self.database,
charset=self.charset)
self.cursor = self.connet.cursor()
# 关闭数据库
def closedb(self):
self.cursor.close()
self.connet.close()
# 查
def get_data(self, sql):
self.connetdb()
res = None
try:
self.cursor.execute(sql)
res = self.cursor.fetchone()
except pymysql.Error as e:
print(e)
self.closedb()
return res
# 增,删,改
def update_data(self, sql):
self.connetdb()
try:
self.cursor.execute(sql)
self.connet.commit()
except:
self.connet.rollback()
self.closedb()
上传图片
class upload:
# 初始化数据
def __init__(self):
self.url = None
self.headers = None
self.file = None
# 上传头像
def upload_head(self, tel, pwd, filename):
token = get_token().gettoken(tel, pwd)
files = os.path.dirname(os.path.abspath('.')) + os.sep + 'Photo' + os.sep + filename
self.url = geturl().getapi('avatar')
self.headers = {'acctoken': token}
with open(files, "rb")as f:
self.file = {
'imageFile': (filename, f, 'image/jpg')
}
response = requests.post(url=self.url, headers=self.headers, files=self.file)
result = response.json()
return result['data']['keyName'], token
# 多图上传
def upload_photos(self, tel, pwd, n):
files = []
token = get_token().gettoken(tel, pwd)
self.url = geturl().getapi('multiple_upload')
self.headers = {
'acctoken': token
}
for i in range(1, n + 1):
file_url = open(os.path.dirname(os.path.abspath('.')) + os.sep + 'Photo' + os.sep + str(i) + '.jpg', 'rb')
file = ('file', ('%s.jpg' % i, file_url, 'image/jpg'))
files.append(file)
response = requests.post(url=self.url, headers=self.headers, files=files)
result = response.json()
if result['status'] == 0:
return result['data']['keyNameList'], token
else:
print(result)
随机生成手机号
import random
import string
# 随机生成手机号
def tel_num():
num_start = ["130", "131", "132", "133", "134", "135", "136", "137", "138", "139",
"147", "150", "151", "152", "153", "155", "156", "157", "158", "159",
"186", "187", "188", "189"]
start = random.choice(num_start) # 在序列中获取一个随机元素
end = "".join(random.sample(string.digits, 8)) # 从指定序列表中获取指定长度的片段
return start + end