python3读取MySQL-Front的MYSQL密码


Posted in Python onMay 03, 2017

前言

同样的套路又来了,继续尝试从配置文件中读取敏感的信息,这次轮到的是MySQL-Front

MySQL-Front就一款开源的mysql管理工具,官方网站http://www.mysqlfront.de/ 。

配置文件的路径:

MySQL-Front的配置文件存在用户目录下,环境变量是%appdata% 。

在windows7下的存储路径是:

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

Accounts.xml这个XML文件里面存储了所有重要的信息,且密码默认不是加密的。上次我忘记mysql root用户的密码,打开这个文件立马就找回密码,

这个算是不加密的好处吧。→_→不过总有刁民想害朕,还是需要保护好这些重要的信息,以免被坏人读取到。

格式化XML

Accounts.xml 中的内容是被压缩成一行的。需要格式化成好看的格式。这类在线工具搜索一下就可以找得到。

Accounts.xml 格式化后的内容如下:

<?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>

python处理XML、HTML的利器PyQuery

我出于要练习的目的,想要用python的XML标准库处理XML ,但是发python 内置提供了好几种方法:xml.sax xml.dom xml.minidom

以及还有xml.parsers.expat ,选择太多,还是决定用PyQuery,PyQuery是依赖于lxml实现的jquery风格的xml解析和处理库。

lxml算是python很重要的库了,已知pandas,BeautifulSoup等等这些库有部分功能依赖lxml。

输入命令安装即可:

pip install pyquery

看完教程后就能把代码写出来了↓↓↓

python3 读取 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())

运行代码后输出:

----------------------------------------------
host: 127.0.0.1
username: root
password: root
----------------------------------------------
host: 127.0.0.1
username: daqin
password: daqin

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Python 相关文章推荐
Python 实现简单的电话本功能
Aug 09 Python
python re模块findall()函数实例解析
Jan 19 Python
python和flask中返回JSON数据的方法
Mar 26 Python
Linux系统(CentOS)下python2.7.10安装
Sep 26 Python
python对列进行平移变换的方法(shift)
Jan 10 Python
Django处理Ajax发送的Get请求代码详解
Jul 29 Python
基于Python检测动态物体颜色过程解析
Dec 04 Python
python ImageDraw类实现几何图形的绘制与文字的绘制
Feb 26 Python
pytorch之Resize()函数具体使用详解
Feb 27 Python
python dict乱码如何解决
Jun 07 Python
Python Request类源码实现方法及原理解析
Aug 17 Python
python Matplotlib数据可视化(2):详解三大容器对象与常用设置
Sep 30 Python
Python判断变量是否为Json格式的字符串示例
May 03 #Python
Windows和Linux下Python输出彩色文字的方法教程
May 02 #Python
python中字符串类型json操作的注意事项
May 02 #Python
python实现逻辑回归的方法示例
May 02 #Python
pycharm中连接mysql数据库的步骤详解
May 02 #Python
Python多线程实现同步的四种方式
May 02 #Python
Python之Web框架Django项目搭建全过程
May 02 #Python
You might like
php发送post请求的三种方法
2014/02/11 PHP
PHP接收json 并将接收数据插入数据库的实现代码
2015/12/01 PHP
使用JQUERY Tabs插件宿主IFRAMES
2010/01/01 Javascript
网页图片延时加载的js代码
2010/04/22 Javascript
不使用中间变量,交换int型的 a, b两个变量的值。
2010/10/29 Javascript
jquery的总体架构分析及实现示例详解
2014/11/08 Javascript
jQuery实现购物车数字加减效果
2015/03/14 Javascript
谈谈第三方App接入微信登录 解读
2016/12/27 Javascript
基于MVC方式实现三级联动(JavaScript)
2017/01/23 Javascript
angularjs中$http异步上传Excel文件方法
2018/02/23 Javascript
vue + vuex todolist的实现示例代码
2018/03/09 Javascript
基于Vue2实现简易的省市区县三级联动组件效果
2018/11/05 Javascript
vue.js引入外部CSS样式和外部JS文件的方法
2019/01/06 Javascript
PHPStorm中如何对nodejs项目进行单元测试详解
2019/02/28 NodeJs
基于vue+axios+lrz.js微信端图片压缩上传方法
2019/06/25 Javascript
微信小程序 如何获取网络状态
2019/07/26 Javascript
vue项目在webpack2实现移动端字体自适配功能
2020/06/02 Javascript
python 字符串格式化代码
2013/03/17 Python
Python自动化测试工具Splinter简介和使用实例
2014/05/13 Python
举例详解Python中threading模块的几个常用方法
2015/06/18 Python
用python实现的线程池实例代码
2018/01/06 Python
Python实现PS图像调整之对比度调整功能示例
2018/01/26 Python
python的xpath获取div标签内html内容,实现innerhtml功能的方法
2019/01/02 Python
windows 10 设定计划任务自动执行 python 脚本的方法
2019/09/11 Python
一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系
2020/07/03 Python
对python中list的五种查找方法说明
2020/07/13 Python
Pycharm2020.1安装无法启动问题即设置中文插件的方法
2020/08/07 Python
基于HTML5 Canvas的3D动态Chart图表的示例
2017/11/02 HTML / CSS
Fairyseason:为个人和批发商提供女装和配件
2017/03/01 全球购物
美国著名的女性内衣零售商:Frederick’s of Hollywood
2018/02/24 全球购物
JENNIFER BEHR官网:各种耳环和发饰
2020/06/07 全球购物
2014年安全员工作总结
2014/11/13 职场文书
学术研讨会欢迎词
2015/01/26 职场文书
施工单位工程部经理岗位职责
2015/04/09 职场文书
告别网页搜索!教你用python实现一款属于自己的翻译词典软件
2021/06/03 Python
tomcat下部署jenkins的方法
2022/05/06 Servers