From 965c83ae752c060f22509329384eb2370105bb7d Mon Sep 17 00:00:00 2001 From: "Joao P. A. Mondoni" Date: Sun, 25 Feb 2018 20:41:18 -0300 Subject: [PATCH] =?UTF-8?q?gera=C3=A7=C3=A3o=20de=20arquivo=20de=20times?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Completo o script que faz a geração de times, já gerando uma senha e jogando no banco de dados e recuperando a senha do mesmo caso já tenha sido gerada. Adicionado arquivo de import como exemplo --- Modulos/Times/generate.py | 68 ++++++++++++++++++++++++--------------- Modulos/Times/import.txt | 30 +++++++++++++++++ 2 files changed, 72 insertions(+), 26 deletions(-) create mode 100644 Modulos/Times/import.txt diff --git a/Modulos/Times/generate.py b/Modulos/Times/generate.py index aee5c06..92a7d8a 100644 --- a/Modulos/Times/generate.py +++ b/Modulos/Times/generate.py @@ -1,49 +1,65 @@ import string import random -import mysql.connector +from mysql.connector import MySQLConnection, Error import database_conf as cfg import team +__select_ALL = "SELECT team_number, team_site, team_name, password, team_short_name, enabled, type, multi_login, team_full_name FROM TEAMS" + def select_teams(cursor): - query = ("SELECT team_number, team_name from TEAMS") + query = ("SELECT team_number, team_name, password from TEAMS") cursor.execute(query) return cursor def update_passwords(cnx, cursor): - for(team_number, team_name) in cursor: - new_pass = ''.join(random.SystemRandom().choice(string.ascii_uppercase + string.digits) for _ in range(6)) - cursor.execute = (""" - UPDATE TEAMS - SET password=%s - WHERE team_number=%s - """, (new_pass, team_number)) - print(team_number, team_name, new_pass) + for(team_number, team_name, password) in cursor: + if(not password): + new_pass = ''.join(random.SystemRandom().choice(string.ascii_uppercase + string.digits) for _ in range(6)) + query = """UPDATE TEAMS + SET password=%s + WHERE team_number=%s""" + data = (new_pass, team_number) + + try: + cursor.execute(query,data) + except Error as error: + print(error) + cnx.commit() +def generate_file(cursor): + cursor.execute(__select_ALL) + f = open("import.txt", 'w') + f.write("[user]") + first_team = True + for(team_number, team_site, team_name, password, team_short_name, enabled, type, multi_login, team_full_name) in cursor: + if(first_team): + f.write('\n') + first_team = False + else: + f.write('\n\n') + f.write('usernumber=' + str(team_number)) + f.write('\nusersitenumber=' + team_site) + f.write('\nusername=' + team_short_name) + f.write('\nusertype=' + type) + f.write('\nuserenabled=' + enabled) + f.write('\nusermultilogin=' + multi_login) + f.write('\nuserfullname=' + team_full_name) + f.write('\nuserdesc=' + team_full_name) + f.write('\nuserpassword=' + str(password)) + f.close() + def main(): - cnx = mysql.connector.connect(**cfg.mysql) + cnx = MySQLConnection(**cfg.mysql) cursor = cnx.cursor() select_teams(cursor) update_passwords(cnx, cursor) + generate_file(cursor) cursor.close() cnx.close() if __name__ == "__main__": - main() - - - - -# [user] -# usernumber=900 -# usersitenumber=1 -# username=time1 -# usertype=team -# userenabled=t -# usermultilogin=f -# userfullname=[TIME 1]ASAP -# userdesc=[TIME 1]ASAP -# userpassword=20194143 \ No newline at end of file + main() \ No newline at end of file diff --git a/Modulos/Times/import.txt b/Modulos/Times/import.txt new file mode 100644 index 0000000..0cc61ad --- /dev/null +++ b/Modulos/Times/import.txt @@ -0,0 +1,30 @@ +[user] +usernumber=900 +usersitenumber=1 +username=team1 +usertype=team +userenabled=t +usermultilogin=f +userfullname=[Team 1] ASAP +userdesc=[Team 1] ASAP +userpassword=5EUQDV + +usernumber=901 +usersitenumber=1 +username=team2 +usertype=team +userenabled=t +usermultilogin=f +userfullname=[Team 2] Sudocode +userdesc=[Team 2] Sudocode +userpassword=ZHODQV + +usernumber=902 +usersitenumber=1 +username=team3 +usertype=team +userenabled=t +usermultilogin=f +userfullname=[Team 3] JAVAIScript +userdesc=[Team 3] JAVAIScript +userpassword=FV5Y78 \ No newline at end of file