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实现监控windows服务并自动启动服务示例
Apr 17 Python
Python中使用item()方法遍历字典的例子
Aug 26 Python
Python3的urllib.parse常用函数小结(urlencode,quote,quote_plus,unquote,unquote_plus等)
Sep 18 Python
Python中使用支持向量机SVM实践
Dec 27 Python
Python设计模式之门面模式简单示例
Jan 09 Python
python 列表降维的实例讲解
Jun 28 Python
python实现屏保程序(适用于背单词)
Jul 30 Python
Django结合ajax进行页面实时更新的例子
Aug 12 Python
Python实现微信中找回好友、群聊用户撤回的消息功能示例
Aug 23 Python
python实现低通滤波器代码
Feb 26 Python
Python selenium的这三种等待方式一定要会!
Jun 10 Python
据Python爬虫不靠谱预测可知今年双十一销售额将超过6000亿元
Nov 11 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取进制余数函数代码
2012/01/19 PHP
PHP关于IE下的iframe跨域导致session丢失问题解决方法
2013/10/10 PHP
PHP基于pdo的数据库操作类【可支持mysql、sqlserver及oracle】
2018/05/21 PHP
20个非常有用的PHP类库 加速php开发
2010/01/15 Javascript
JavaScript返回网页中超链接数量的方法
2015/04/03 Javascript
javascript弹出窗口中增加确定取消按钮
2016/06/24 Javascript
关于在Servelet中如何获取当前时间的操作方法
2016/06/28 Javascript
javascript history对象详解
2017/02/09 Javascript
javascript 中的try catch应用总结
2017/04/01 Javascript
React简单介绍
2017/05/24 Javascript
Vue.js实例方法之生命周期详解
2017/07/03 Javascript
20170918 前端开发周报之JS前端开发必看
2017/09/18 Javascript
JS正则表达式完美实现身份证校验功能
2017/10/18 Javascript
跟老齐学Python之折腾一下目录
2014/10/24 Python
Python实现TCP/IP协议下的端口转发及重定向示例
2016/06/14 Python
老生常谈Python序列化和反序列化
2017/06/28 Python
Python 普通最小二乘法(OLS)进行多项式拟合的方法
2018/12/29 Python
python进程的状态、创建及使用方法详解
2019/12/06 Python
利用PyCharm操作Github(仓库新建、更新,代码回滚)
2019/12/18 Python
python根据完整路径获得盘名/路径名/文件名/文件扩展名的方法
2020/04/22 Python
使用Python爬取小姐姐图片(beautifulsoup法)
2021/02/11 Python
介绍一下.net和Java的特点和区别
2012/09/26 面试题
文职个人求职信范文
2013/09/23 职场文书
花卉与景观设计系大学生求职信
2013/10/01 职场文书
采购主管岗位职责
2014/02/01 职场文书
美容院经理岗位职责
2014/04/03 职场文书
令人印象深刻的自荐信
2014/05/25 职场文书
英语系毕业生求职信
2014/07/13 职场文书
社区学习党的群众路线教育实践活动心得体会
2014/11/03 职场文书
2015年家长学校工作总结
2015/04/22 职场文书
丧事主持词
2015/07/02 职场文书
关于感恩老师的古诗句
2019/08/20 职场文书
详解Java实践之建造者模式
2021/06/18 Java/Android
React如何创建组件
2021/06/27 Javascript
Python进程池与进程锁之语法学习
2022/04/11 Python
Python可视化动图组件ipyvizzu绘制惊艳的可视化动图
2022/04/21 Python