日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python的对文档密码的简单破解

發布時間:2023/12/16 python 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python的对文档密码的简单破解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近簡單學習了一下python語言,對模塊和庫有了一點了解,寫個博客作為自己學習的記錄。

這次是關于暴力破解excel密碼的程序,起因是自己的一個文檔忘記密碼了,但自己沒什么經驗,就參照了一些博客的代碼,按照自己的思路拼接而成。

首先是打開帶密碼的excel。

excel = DispatchEx("Excel.Application") # 啟動excel excel.Visible = False # 去掉可視化 demo = excel.Workbooks.Open(filename, UpdateLinks=False, ReadOnly=False, Format=None,Password=password)

然后是生成密碼字典。

list1 = [chr(i) for i in range(48, 58)] # 0-9的ASCLL碼值 list2 = [chr(i) for i in range(65, 91)] # A-Z的ASCLL碼值 list3 = [chr(i) for i in range(97, 123)] # a-z的ASCLL碼值 newlist = list1+list2+list3 #看情況選擇三種中的幾種

然后就是嘗試破解了。

for i in product(newlist, repeat=length): # 開始生成密碼result = ''.join(i)password = resultprint('嘗試第%d次,密碼為%s' % (currentresult,password))try:demo = excel.Workbooks.Open(filename, UpdateLinks=False, ReadOnly=False, Format=None,Password=password)excel.Visible = Truebreak# read_excel_password(filename, password)except:currentresult+=1continue

最后組合一下就可以得到完整代碼。

from itertools import product from win32com.client import DispatchEx # product作用:將提供的容器中的所有元素排列組合形式按照指定的長度完全列出來 # 1.將數字、字母放入容器中 # 2.指定長度范圍 # 3.開始生成“密碼”excel = DispatchEx("Excel.Application") # 啟動excel excel.Visible = False # 去掉可視化list1 = [chr(i) for i in range(48, 58)] # 0-9的ASCLL碼值 list2 = [chr(i) for i in range(65, 91)] # A-Z的ASCLL碼值 list3 = [chr(i) for i in range(97, 123)] # a-z的ASCLL碼值 newlist = list1 print(newlist)# 指定長度范圍 currentresult=1 if __name__ == '__main__':filename = "此處是文件路徑"for length in range(4, 8):# product(字符串容器,repeat=長度)for i in product(newlist, repeat=length): # 開始生成密碼result = ''.join(i)password = resultprint('嘗試第%d次,密碼為%s' % (currentresult,password))try:demo = excel.Workbooks.Open(filename, UpdateLinks=False, ReadOnly=False, Format=None,Password=password)excel.Visible = Truebreakexcept:currentresult+=1continuebreak

自己嘗試后才發現暴力破解其實根本行不通,因為自己的電腦只能做到每秒嘗試20次左右,而三位數的組合就近萬種,不過這也算是一次很不錯的嘗試。

總結

以上是生活随笔為你收集整理的python的对文档密码的简单破解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。