Maison > Article > développement back-end > Comment lire le mot de passe utilisateur depuis MySQL-Front
Cet article présente principalement les connaissances pertinentes de python3 pour lire le mot de passe MYSQL de MySQL-Front, qui a une bonne valeur de référence. Jetons un coup d'œil avec l'éditeur ci-dessous
Avant-propos
La même routine est encore là, continuez à essayerà partir du fichier de configuration Lisez les informations sensibles , cette fois c'est MySQL-Front.
MySQL-Front est un outil de gestion MySQL open source, le site officiel est www.mysqlfront.de/.
Le chemin du fichier de configuration :
Le fichier de configuration de MySQL-Front est stocké dans le répertoire utilisateur, et la variable d'environnement est %appdata%. Le chemin de stockage de
sous Windows 7 est :
C:Users%user%AppDataRoamingMySQL-FrontAccounts.xml
Accounts.xml est stocké dans ce XML fichier Toutes les informations importantes et les mots de passe ne sont pas cryptés par défaut. La dernière fois que j'ai oublié le mot de passe de l'utilisateur root mysql, j'ai pu récupérer le mot de passe immédiatement après avoir ouvert ce fichier
C'est l'avantage de ne pas le crypter. →_→Cependant, il y a toujours des gens sans scrupules qui veulent me faire du mal, je dois donc quand même protéger ces informations importantes pour éviter qu'elles ne soient lues par de mauvaises personnes.
XML formaté
Le contenu de Accounts.xml est compressé en une seule ligne. Doit être formaté dans un format agréable. De tels outils en ligne peuvent être trouvés en effectuant une recherche.
Le contenu formaté de Accounts.xml est le suivant :
<?xml version="1.0" encoding="utf-8"?> <accounts version="1.1.0"> <default>127.0.0.1</default> <account name="127.0.0.1"> <lastlogin>42847.9391816088</lastlogin> <manualurl version="5.0.22-community-nt"></manualurl> <connection> <database></database> <host>127.0.0.1</host> <library> <filename>libMySQL.dll</filename> <tunnel_url></tunnel_url> </library> <password encode="none">root</password> <port>3306</port> <user>root</user> </connection> <favorites /> </account> <account name="daqin"> <lastlogin>0</lastlogin> <manualurl version=""></manualurl> <connection> <database></database> <host>127.0.0.1</host> <library> <filename>libMySQL.dll</filename> <tunnel_url></tunnel_url> </library> <password encode="none">daqin</password> <port>3306</port> <user>daqin</user> </connection> <favorites /> </account> </accounts>
Le puissant outil de Python pour le traitement du XML et HTML PyQuery
À des fins de pratique, je souhaite utiliser la bibliothèque standard XML de python pour traiter XML, mais python fournit plusieurs méthodes intégrées : xml.sax xml . dom xml.minidom
et xml.parsers.expat Il y a trop de choix, j'ai donc décidé d'utiliser PyQuery PyQuery s'appuie sur le style jquery implémenté par. lxml. Bibliothèque d'analyse et de traitement XML.
Lxml est une bibliothèque très importante en Python. On sait que certaines fonctions de pandas, BeautifulSoup et d'autres bibliothèques dépendent de lxml.
Entrez la commande install :
pip install pyquery
Vous pourrez écrire le code après avoir lu le tutoriel↓↓↓
python3 lit le mot de passe de MySQL-Front :
# -*- coding: utf-8 -*- """ Created on 2017-04-22 22:53:35 @author: codegay """ import os from pyquery import PyQuery as pyq xmlpath = os.environ['appdata']+r'\MySQL-Front\Accounts.xml' root = pyq(filename=xmlpath) for r in root('connection').items(): print("----------------------------------------------") print('host:',r('host').text()) print('username:',r('user').text()) print('password:',r('password').text())
Sortie après exécution du code :
---------------------------------------------- host: 127.0.0.1 username: root password: root ---------------------------------------------- host: 127.0.0.1 username: daqin password: daqin
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!