Home > Backend Development > Python Tutorial > How to read user password from MySQL-Front

How to read user password from MySQL-Front

Y2J
Release: 2017-05-12 10:30:43
Original
2455 people have browsed it

This article mainly introduces the knowledge related to python3 reading the MYSQL password of MySQL-Front, which has a good reference value. Let’s take a look with the editor below

Preface

The same routine is here again, continue to tryFrom the config file Read sensitive information, this time it is MySQL-Front.

MySQL-Front is an open source mysql management tool, the official website is www.mysqlfront.de/.

The path of the configuration file:

The MySQL-Front configuration file exists in the user directory, and the environment variable is %appdata%.

The storage path under windows7 is:

##C:\Users\%user%\AppData\Roaming\MySQL- Front\Accounts.xml

Accounts.xml This XML file stores all important information, and the password is not encrypted by default. Last time I forgot the password of the mysql root user, I could retrieve the password immediately after opening this file.

This is the benefit of not encrypting it. →_→However, there are always unscrupulous people who want to harm me, so I still need to protect this important information to prevent it from being read by bad people.

Formatted XML

The content in Accounts.xml is compressed into one line. It needs to be formatted into a nice-looking format. This type of

online toolcan be found by searching.

The formatted content of Accounts.xml is as follows:

##

<?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>
Copy after login

Python's powerful tool for processing XML and HTML, PyQuery

For the purpose of

practice

, I want to use python's XML standard library to process XML, but python provides several built-in methods: xml.sax xml.dom xml.minidom and xml.parsers.expat, there are too many choices, so I decided to use

PyQuery

, PyQuery is jquery style xml that relies on lxml implementation Parsing and processing library. lxml is a very important library in python. It is known that some functions of pandas, BeautifulSoup and other libraries depend on lxml.

Enter the command

install

:

pip install pyquery

You can write the code after reading the tutorial ↓↓↓

python3 Read the password of 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[&#39;appdata&#39;]+r&#39;\MySQL-Front\Accounts.xml&#39;

root = pyq(filename=xmlpath)
for r in root(&#39;connection&#39;).items():
 print("----------------------------------------------")
 print(&#39;host:&#39;,r(&#39;host&#39;).text())
 print(&#39;username:&#39;,r(&#39;user&#39;).text())
 print(&#39;password:&#39;,r(&#39;password&#39;).text())
Copy after login

Output after running the code:

----------------------------------------------
host: 127.0.0.1
username: root
password: root
----------------------------------------------
host: 127.0.0.1
username: daqin
password: daqin
Copy after login

The above is the detailed content of How to read user password from MySQL-Front. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template