【问题标题】:Joke password cracker in pythonpython中的笑话密码破解程序
【发布时间】:2016-03-16 22:02:14
【问题描述】:

我正在尝试在 python 中创建一个笑话密码破解程序。简单地说,它将创建从感叹号到空格的所有字符组合。它会自动打开记事本并在五秒钟内(当记事本初始化时)执行 pyautogui 魔术来模拟按键以将行写入记事本。目前我有这个代码

import pyautogui, time, subprocess

pyautogui.PAUSE = 0
subprocess.Popen("notepad.exe")
time.sleep(5)

for n in range (1,3):
    for i in range (33,127):
        pyautogui.typewrite((chr(i))*n+"\n"*2)

但它会产生:

!


"


...


}}


~~

我需要的是

!


"


...


~}


~~

有人可以回复我如何生成每个字符组合吗?谢谢! 附:我正在使用 python 3.5。

【问题讨论】:

  • 不,我只是想创建一个程序,它可以简单地打印出所有组合,直到一个特定的值。它只是被称为 joke_password_cracker.py
  • 这应该如何工作?你怎么期望chr(i)*n 输出两个不同的字符?
  • 我不会在现实生活中破解任何密码。这是犯罪。
  • 我不知道如何让它工作,这就是我问这个问题的原因。
  • 您可能会查看 python 的 itertools.permutations 函数 - 我相信它应该可以满足您的需求。另见stackoverflow.com/questions/17434070/…

标签: python python-3.x for-loop character


【解决方案1】:

如果您想查找组合,请使用itertools 模块:

>>> from itertools import combinations_with_replacement

>>> a = combinations_with_replacement(map(chr, range(123,127)), password_length))
>>> list(a)
[('!', '!'), ('!', '"'), ('!', '#'), ('!', '$'), ('!', '%') ........

password_length 达到大多数密码的最小长度时,等待它完成很有趣:)

【讨论】:

  • 这是什么:回溯(最近一次调用最后一次):文件“D:\My Documents\python\pyautogui\joke_password_cracker.py”,第 9 行,在 pyautogui.typewrite(a)文件“C:\Python35\lib\site-packages\pyautogui_init_.py”,第 961 行,打字 c = c.lower() AttributeError: 'tuple' object has no attribute 'lower'
  • 啊,我明白了,抱歉又打扰你了。
  • 使用(''.join(i) for i in a)a 转换为您想要的格式(字符串的可迭代)
【解决方案2】:

如何在python中创建简单的密码代码:

输入代码

password = input("Enter password:")
    
    if password == "cheese":   
        
        print("Access granted")
        
    else:
        
        print("Access denied")

"cheese" 部分可以是任何东西,因为它是密码。

输出

Enter password:bat

Access denied

Enter password:cheese

Access granted 

【讨论】:

  • 这没有回答 OP 的问题;一方面,OP 询问的是 output,而不是 input;请改写你的答案
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-01
  • 1970-01-01
  • 2015-11-16
  • 1970-01-01
相关资源
最近更新 更多