Python Script de Connexion; les noms d'utilisateur et mots de passe dans un fichier séparé
Je suis à la recherche de l'aide pour obtenir mon script Python pour imiter un journal-dans les fonctionnalités, alors que les informations d'identification sont stockées dans un fichier séparé.
Je l'ai eu à travailler à partir de codé en dur nom d'utilisateur et le Mot de passe, et il se lit aussi dans un fichier, mais je vais avoir quelques difficultés à trouver comment faire pour les relier.
Toute aide est appréciée.
Le script Python est comme suit:
print "Login Script"
import getpass
CorrectUsername = "Test"
CorrectPassword = "TestPW"
loop = 'true'
while (loop == 'true'):
username = raw_input("Please enter your username: ")
if (username == CorrectUsername):
loop1 = 'true'
while (loop1 == 'true'):
password = getpass.getpass("Please enter your password: ")
if (password == CorrectPassword):
print "Logged in successfully as " + username
loop = 'false'
loop1 = 'false'
else:
print "Password incorrect!"
else:
print "Username incorrect!"
J'ai trouvé ça ailleurs qui m'a aidé à lire le fichier, et il n'a imprimer le contenu du fichier texte, mais je ne suis pas certain sur la manière de progresser à partir de ce:
with open('Usernames.txt', 'r') as f:
data = f.readlines()
#print data
for line in data:
words = line.split()
Le fichier texte contient les noms d'utilisateur et mots de passe dans un format de: Test:TestPW Chris:ChrisPW Admin:AdminPW avec toutes les informations d'identification sur une nouvelle ligne.
Comme je l'ai dit précédemment, toute aide est très appréciée!
Merci.
- S'il vous plaît, est-il une raison pour vous d'utiliser
'true'
et'false'
? Me donne envie de pleurer. Ne pourriez-vous pas utiliser le bonTrue
etFalse
Python booléens? - Pas de vraie raison, c'était la façon la plus simple que je pouvais penser de le faire alors que j'ai été le tester des trucs.
- Ok, ça sonne un peu dur. De toute façon, à l'aide de
True
etFalse
, vous pouvez simplifier votre boucle conditions, parce que (eg.while loop:
) - Ok, merci pour les conseils, je vais regarder dans le faire dans l'avenir!
Vous devez vous connecter pour publier un commentaire.
Vous pourriez commencer à avoir un dictionnaire de noms d'utilisateur et mots de passe:
Ensuite, vous avez deux tests simples:
est vous dire si le nom d'utilisateur dans les informations d'identification du fichier (c'est à dire. si c'est une clé dans la
credentials
dictionnaire)Et puis:
Vous ne devez pas utiliser les 2 boucles. Il serait juste de dire à la personne qu'elle a deviné le nom d'utilisateur. Juste pour dire. utiliser une boucle.
aussi consulter ma repl.il il page pour une meilleure authentification unique, qui peut avoir comme 100 personnes à la fois sans l'autre, s'états
Ici, il est: https://repl.it/@AmazingPurplez/CatSSO
A des erreurs. A été développé uniquement par moi, donc rep +pour moi.
Pourrait pas poster le code ici en raison de "le retrait des erreurs" comme frick il! mais je vais quand même essayer une version plus simple