利用Python如何生成随机密码


Posted in Python onApril 20, 2016

本位实例为大家分享了Python生成随机密码的实现过程,供大家参考,具体内容如下

写了个程序,主要是用来检测MySQL数据库的空密码和弱密码的,

在这里,定义了三类弱密码:

1. 连续数字,譬如123456,在get_weak_num中实现

2. 连续字母,譬如abcdef,在get_weak_character中实现

当然,个数都是随机的。

3. 数字和字母随机组合。在get_weak_num_character中实现。

同时定义了一个password_exist的列表,用于保存不同的密码。如果新生成的密码在列表中存在,则不进行MySQL数据库的连接,直接到下一次循环。

具体如下:

#coding=utf8
import random,string,MySQLdb
def get_num():
  return random.randint(0,9)
def get_char():
  return random.choice(tuple(string.lowercase))
def choose_any():
  return [str(get_num()),get_char()]
def get_weak_num():
  weak_num=[]
  initial_num=get_num()
  for i in range(get_num()):
    weak_num.append(str(initial_num+i))
    if initial_num +i ==9:
      break;
  return weak_num
def get_weak_character():
  weak_character=[]
  initial_character=get_char()
  for i in range(get_num()):
    weak_character.append(chr(ord(initial_character)+i))
    if chr(ord(initial_character)+i) == 'z':
      break
  return weak_character
def get_weak_num_character():
  return [random.choice(choose_any()) for num in range(get_num())]
password_exist=[]
for i in range(10000):
  choice = [get_weak_num(), get_weak_character(), get_weak_num_character()]
  password=''.join(random.choice(choice))
  print "第"+str(i)+"次密码为:"+password
  if password in password_exist:
    continue
  else:
    try:
      MySQLdb.connect('192.168.244.145', 'root', password)
      print 'The password for MySQL is:'+password
      break
    except:
      continue
    password_exist.append(password)
if i == 9999:
  print 'The password is not so weak~'

以上就是本文的全部内容,希望对大家的学习有所帮助。

Python 相关文章推荐
Python中使用Inotify监控文件实例
Feb 14 Python
Python中下划线的使用方法
Mar 27 Python
python+matplotlib演示电偶极子实例代码
Jan 12 Python
Python使用pickle模块存储数据报错解决示例代码
Jan 26 Python
python矩阵的转置和逆转实例
Dec 12 Python
python实现微信小程序用户登录、模板推送
Aug 28 Python
Tensorflow累加的实现案例
Feb 05 Python
Python使用urlretrieve实现直接远程下载图片的示例代码
Aug 17 Python
Python paramiko使用方法代码汇总
Nov 20 Python
运行python提示no module named sklearn的解决方法
Nov 29 Python
Python3使用tesserocr识别字母数字验证码的实现
Jan 29 Python
Python爬虫基础之简单说一下scrapy的框架结构
Jun 26 Python
Python自动化部署工具Fabric的简单上手指南
Apr 19 #Python
python实现简单socket通信的方法
Apr 19 #Python
python实现域名系统(DNS)正向查询的方法
Apr 19 #Python
python安装与使用redis的方法
Apr 19 #Python
Python实现文件复制删除
Apr 19 #Python
利用Python获取赶集网招聘信息前篇
Apr 18 #Python
Python Sql数据库增删改查操作简单封装
Apr 18 #Python
You might like
php ftp文件上传函数(基础版)
2010/06/03 PHP
Window下PHP三种运行方式图文详解
2013/06/11 PHP
PHP集成百度Ueditor 1.4.3
2014/11/23 PHP
php浏览历史记录的方法
2015/03/10 PHP
详解js异步文件加载器
2016/01/24 PHP
PHP开发制作一个简单的活动日程表Calendar
2016/06/20 PHP
关于php开启错误提示的总结
2019/09/24 PHP
关于Jqzoom的使用心得 jquery放大镜效果插件
2010/04/12 Javascript
jQuery + Flex 通过拖拽方式动态改变图片的代码
2011/08/03 Javascript
imgAreaSelect 中文文档帮助说明
2011/10/08 Javascript
jquery中通过父级查找进行定位示例
2013/06/28 Javascript
jquery ztree实现下拉树形框使用到了json数据
2014/05/14 Javascript
js随机生成网页背景颜色的方法
2015/02/26 Javascript
Summernote实现图片上传功能的简单方法
2016/07/11 Javascript
详解Javascript获取缓存和清除缓存API
2017/05/25 Javascript
jQuery ajax读取本地json文件的实例
2017/10/31 jQuery
原生JS+HTML5实现跟随鼠标一起流动的粒子动画效果
2018/05/03 Javascript
Vue.js的复用组件开发流程完整记录
2018/11/29 Javascript
微信小程序实现简单跑马灯效果
2020/05/26 Javascript
JS实现简单省市二级联动
2019/11/27 Javascript
python 内置函数filter
2017/06/01 Python
Python 判断是否为质数或素数的实例
2017/10/30 Python
pandas实现将dataframe满足某一条件的值选出
2019/06/12 Python
意大利辅助药品、药物和补品在线销售:FarmaEurope
2020/04/29 全球购物
总经理驾驶员岗位职责
2013/12/04 职场文书
全陪导游欢迎词
2014/01/17 职场文书
超市端午节活动方案
2014/01/23 职场文书
网络工程师自荐书范文
2014/04/01 职场文书
合伙协议书
2014/04/23 职场文书
安全环保演讲稿
2014/08/28 职场文书
解放思想演讲稿
2014/09/11 职场文书
学雷锋团日活动总结
2015/05/06 职场文书
2016新年年会主持词
2015/07/06 职场文书
如何理解python接口自动化之logging日志模块
2021/06/15 Python
浅谈css实现背景颜色半透明的两种方法
2021/12/06 HTML / CSS
详解Mysql事务并发(脏读、不可重复读、幻读)
2022/04/29 MySQL