Python是一款非常强大的语言。用于测试时它非常有效,因此Python越来越受到欢迎。

因此,在此次教程中我将聊一聊如何在Python中生成字典,并将它用于任何你想要的用途。

前提要求

1,Python 2.7(对于Python 3.x的版本基本相同,你只需要做一些微小调整)

2,Peace of mine(作者开的一个玩笑,这是一首歌名)

如果你用virtualenv搭建Python开发环境,请确保已经安装了itertools。因为我们将会用到itertools生成字典。我们将一步一步地演示整个过程,所以请跟着本文学习,不要仅仅是复制粘贴所有代码。

生成字典

新建一个名为”dicgen.py”的文件,并用你最顺手的文本编辑器打开它。

首先我们要调用itertools。

我使用了itertools as itr,可以少打一些字。在调用了itertools之后,我们进入下一步。

我们需要选择一些关键词形成一些组合来生成所需的字典。把这些关键词交给itertools提供的方法来生成字典。

寻找合适的关键词需要一些小窍门。举个例子,我忘记了一个用来管理服务器的文件密码(.php)。我需要输入用户名和密码来打开这个文件,才可以对我的服务器进行修改。我也忘记了cpanel的登录信息。因此我决定暴力破解密码。我记得用户名,但是密码记得不是很清楚,而且手动尝试了所有组合但都不正确。因此我在Python里写了一个脚本去生成密码并登录。我手头上有一些密码的线索,比如它是长度为六位,仅是字母组合,不包含数字或特殊符号。

让我们回到教程中来。假设要生成一个六位长度,并且仅含有字母的密码(大小写混合)。

我们一点一点地来讲解这段代码。

words变量是我们希望在密码中尝试的字符。在本例中,这些字符就是字母表中的大写和小写字母。所以我们在这里添加了所有的大写、小写字母。

itr.product(words, repeat=6)是这段代码最主要的部分,从给定的字母表中返回选择的列表。由于本例中密码长度为六位,所以此处设定了重复6次(repeat=6)。

我们把这个过程循环6次,确保每个字母列表都被加入到主列表中。

我们再把所有生成的密码都放到一个列表里,看看能有多少种组合。但现在还别运行它,否则你的电脑可能会死机。

我们建议你在密码生成后立即使用它,或者将它储存在一个文档里。这只是一个基本。在下一个教程里我们会更多地了解如何根据我们的需求更高效地生成密码。

下面是完整代码。

参考网址:python.freelycode.com

利用Python自动生成暴力破解的字典的更多相关文章

  1. 忘记秘密利用python模拟登录暴力破解秘密

    忘记秘密利用python模拟登录暴力破解秘密: #encoding=utf-8 import itertools import string import requests def gen_pwd_f ...

  2. 利用python自动生成verilog模块例化模板

    一.前言 初入职场,一直忙着熟悉工作,就没什么时间更新博客.今天受“利奇马”的影响,只好宅在家中,写写技术文章.芯片设计规模日益庞大,编写脚本成了芯片开发人员必要的软技能.模块端口动不动就几十上百个, ...

  3. python笔记 利用python 自动生成条形码 二维码

    1. ean13标准条形码 from pystrich.ean13 import EAN13Encoder encode = EAN13Encoder(') encode.save('d:/barco ...

  4. Python自动生成代码工具

    项目中有一个需求,对一个基类而言,拥有一个比较方法和拷贝方法,某些地方需要频繁地对这两个方法进行调用.对于所有子类而言,需要重写这两个方法,并在其中维护类内一些成员变量.例如有一个变量m_iMyVal ...

  5. 【机器学习PAI实战】—— 玩转人工智能之利用GAN自动生成二次元头像

    前言 深度学习作为人工智能的重要手段,迎来了爆发,在NLP.CV.物联网.无人机等多个领域都发挥了非常重要的作用.最近几年,各种深度学习算法层出不穷, Generative Adverarial Ne ...

  6. 防止WordPress利用xmlrpc.php进行暴力破解以及DDoS

    早在2012 年 12 月 17 日一些采用 PHP 的知名博客程序 WordPress被曝光存在严重的漏洞,该漏洞覆盖WordPress 全部已发布的版本(包括WordPress 3.8.1).该漏 ...

  7. 从用python自动生成.h的头文件集合和类声明集合到用python读写文件

    最近在用python自动生成c++的类.因为这些类会根据需求不同产生不同的类,所以需要用python自动生成.由于会产生大量的类,而且这些类是变化的.所以如果是在某个.h中要用include来加载这些 ...

  8. [06] 利用mybatis-generator自动生成代码

    1.mybatis-generator 概述 MyBatis官方提供了逆向工程 mybatis-generator,可以针对数据库表自动生成MyBatis执行所需要的代码(如Mapper.java.M ...

  9. 利用Python 脚本生成 .h5 文件 代码

    利用Python 脚本生成 .h5 文件 import os, json, argparse from threading import Thread from Queue import Queue ...

随机推荐

  1. Swift之 ? 和 !

    Swift之 ? 和 ! 转载于:http://joeyio.com/ios/2014/06/04/swift---/ Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋 ...

  2. SmallPtAMP: C++ AMP implementation of SmallPt / SmallPtGPU

    前段时间突然对SmallPtGPU很感兴趣,于是自己也照葫芦画瓢搞了一个C++AMP的版本,整体跟SmallPtGPU基本相同,但是去掉了SmallPtGPU中显式计算直接光照的步骤,因而实现更加接近 ...

  3. fiddler手机抓包教程

    序言 记录一下自己第一次使用fiddler抓取手机的信息,做一个备忘 实现步骤 一.首先设置一下fiddler,使其对HTTPS协议进行抓包 二.然后设置fidder使得fiddler支持远程计算机连 ...

  4. 使用apache ftpserver搭建ftp服务器

    作为一个javaer,遇到任何问题,先查一下java中的解决方案.地球上的许多事情,在java中都能找到完美的解决方案.之前搭建ftp服务器使用的是vsftpd,现在可以把它卸掉了,它以服务的形式运行 ...

  5. BeautifulSoup 的用法

    转自:http://cuiqingcai.com/1319.html Beautiful Soup支持Python标准库中的HTML解析器,还支持一些第三方的解析器,如果我们不安装它,则 Python ...

  6. Python删除指定时间的文件

    import os import time import sys from xml.dom import minidom, Node from xml.dom.minidom import parse ...

  7. 微信JS接口

      微信JS接口 分享到朋友圈 分享给朋友 分享到QQ 拍照或从手机相册中选图 识别音频并返回识别结果 使用微信内置地图查看位置来源:http://www.cnblogs.com/txw1958/p/ ...

  8. webmagic 增量爬取

    webmagic  是一个很好并且很简单的爬虫框架,其教程网址:http://my.oschina.net/flashsword/blog/180623 webmagic参考了scrapy的模块划分, ...

  9. Apache与Tomcat服务器

    Apache是世界使用排名第一的Web服务器软件.它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一.在Apache基金会里面Apache S ...

  10. C# 的TCP Socket (同步方式)

    简单的c# TCP通讯(TcpListener) C# 的TCP Socket (同步方式) C# 的TCP Socket (异步方式) C# 的tcp Socket设置自定义超时时间 C# TCP ...