def games_xal(): # 把game.xml导入数据库 tree = ET.parse("games.xml") root = tree.getroot() a = 0 appName = appID = '' for game in root.iter("game"): a = a + 1 # print (game) name = '' value = '' for params in game.iter("param"): name = name + '`' + str(params.get('name')) + '`,' value = value + '"' + str(params.get('value')) + '",' if str(params.get('name')) == 'appName': appName = str(params.get('value')) if str(params.get('name')) == 'appID': appID = str(params.get('value')) # print(str(params.get('name'))+' : '+str(params.get('value'))) sql_write = 'insert into game (' + name[: -1] + ') values (' + value[: -1] + ')' # print(sql_write) # print(query(appName, appID)) if query(appName, appID): if not sql.write(sql_write): if not sql.write(sql_write): if not sql.write(sql_write): print(sql_write) print(a)
def LoginBilibili(msg, QQ): import login import time a = login.Login() if msg == '#御坂登录': base = a.newlogin() POST.UserMsg(msg='请在150秒内使用哔哩哔哩客户端扫描登录二维码', to=QQ, picurl=0, picbase=base) print(QQ) for _ in range(150): text = a.chaxunlogin() if text == 'Not Logined': #print('没登录') pass else: POST.UserMsg(msg='登录成功', to=QQ, picurl=0, picbase=0) csrf = text['csrf'] cookie = text['sessdata'] try: sql.write( f'insert into bilibili(QQ,csrf,cookie) values("{QQ}","{csrf}","{cookie}");' ) except: pass break time.sleep(1)
def write(sql_write): #数据写入 if not sql.write(sql_write): if not sql.write(sql_write): if not sql.write(sql_write): print('######################################') print(sql_write) print('######################################') return False return True
def write(sql_write): #数据写入 if not sql.write(sql_write): time.sleep(3) if not sql.write(sql_write): time.sleep(3) if not sql.write(sql_write): print('######################################') print(sql_write) print('######################################') return False return True
def newloginre(): try: #获得参数 data = request.form inputad = str(data['AD']) inputsalt = str(data['salt']) inputkey = str(data['key']) inputcallback = str(data['callback']) inputreturn = str(data['return']) except KeyError: return {"code": "Error", "message": "缺失参数!"} userlist = sql.queries('SELECT * FROM user;') #从MySQL中读取所有用户信息 if inputad in str(userlist): #如果AD在已知列表 for i in range(len(userlist)): if userlist[i][0] == inputad: trueak = userlist[i][1] #获得正确的对应AK break else: #如果不在 return {"code": "Error", "message": "无效的AD!"} daimd5 = inputad + trueak + inputsalt + inputcallback + inputreturn #拼接即将md5的字符串 truesign = hashlib.md5(daimd5.encode('utf-8')).hexdigest() #MD5 if truesign == inputkey: #判断用户签名是否正确 loginid = random.randint(100000000, 999999999) #计算随机请求ID sql.write( f'INSERT INTO loginre VALUES ({loginid},"peting","{inputcallback}","{inputreturn}");' ) #将数据存入数据库 return { #返回 "code": "OK", "AD": inputad, "loginurl": 'https://api.syrathon.com/codemaologin/login/' + str(loginid), "callbackurl": inputcallback, "loginid": str(loginid) } else: return {"code": "Error", "message": "签名错误!"}
def packing_sub(game, channel): # 把提交打包的信息写入列队表 channel = channel.split(',') for channel_sub in channel: sql_write_query = sql.Initial_contrast( "select id from packTask WHERE game='" + game + "' and channel='" + channel_sub + "'") if len(sql_write_query) == 0: channelVersion = sql.Initial_contrast( "select sdkVersionName from channel WHERE game='" + game + "' and name='" + channel_sub + "'") gameVersion = sql.Initial_contrast( "select versionName from game WHERE appName='" + game + "'") startTime = time.strftime('%F %R') founder = 'admin' state = 'no' packTask_sql = "insert into `packTask` (`game`, `channel`, `channelVersion`, `gameVersion`, `startTime`, `founder`, `state`) VALUES ('" + str( game) + "','" + str(channel_sub) + "','" + str( channelVersion[0][0]) + "','" + str( gameVersion[0][0]) + "','" + str( startTime) + "','" + str(founder) + "','" + str( state) + "')" aaa = sql.write(packTask_sql) print(aaa)
print(bag_data) gamename, channelname = str(bag_data[0]), str(bag_data[1]) try: bag_ok = pack.start_bag(gamename, channelname) finally: ttime = str(time.time() * 1000000).replace('.', '') log_file = file_utils.getFullPath('log/u8sdk.log') log_upto = file_utils.getFullPath('webscripts/static/u8sdklog/' + channelname + '-' + gamename + '-' + ttime + '.txt') log_uurl = '/u8sdklog/' + channelname + '-' + gamename + '-' + ttime + '.txt' apk_file = file_utils.getFullPath('output/' + gamename + '/' + channelname + '/' + gamename + '_' + channelname + '.apk') apk_upto = file_utils.getFullPath('webscripts/static/outapk/' + gamename + '_' + channelname + '.apk') apl_uurl = '/outapk/' + gamename + '_' + channelname + '.apk' shutil.copyfile(log_file, log_upto) # 复制日志文件 if bag_ok == 0: shutil.move(apk_file, apk_upto) #把apk移动到可访问目录 bag_sql = sql.write('update `packTask` set state="yes",journal="' + log_uurl + '",link="' + apl_uurl + '" where game="' + gamename + '" and channel="' + channelname + '"') else: bag_sql = sql.write('update `packTask` set state="no",journal="' + log_uurl + '" where game="' + gamename + '" and channel="' + channelname + '"') # os.path.exists(test_file.txt) #检查文件存在