<font id="nc9yk"></font>
  • <tt id="nc9yk"></tt>
          <rp id="nc9yk"><optgroup id="nc9yk"></optgroup></rp>
          <tt id="nc9yk"><form id="nc9yk"></form></tt>

            <cite id="nc9yk"></cite>

            Python實現對word文檔添加密碼去除密碼的示例代碼

             更新時間:2020年12月29日 14:56:57   作者:1want0  
            這篇文章主要介紹了Python實現對word文檔添加密碼去除密碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

            代碼實現如下:

            import win32com.client,os,time
             
            def word_encryption(path, password):
              # 若加密保存.docx時,覆蓋原文件,則無法成功添加密碼。但是保存為另一個文件名,則可以添加密碼。
              # 因此將A存為B,刪A,再將B改為A。
              dirname, tempname = os.path.split(path)
              path_temp = os.path.join(dirname, tempname)
              while os.path.exists(path_temp):
                tempname = f'{len(tempname)}' + tempname
                path_temp = os.path.join(dirname, tempname)
              def encryption(fp, pt, pw):
                word_app = win32com.client.Dispatch('Word.Application')
                word_app.Visible = 0
                word_app.DisplayAlerts = 0
                doc = word_app.Documents.Open(fp, False, False, False, '')
                doc.SaveAs2(pt, None, False, pw)
                doc.Close()
                word_app.Quit()
             
              encryption(path, path_temp, password)
              os.remove(path) # 刪除原文件
              os.rename(path_temp, path) # 改臨時文件名稱為原文件名稱
              time.sleep(0.5) # 不要刪除,不要刪除
            def word_decryption(path, password):
              # 若加密保存.docx時,覆蓋原文件,則無法成功添加密碼。但是保存為另一個文件名,則可以添加密碼。
              # 因此將A存為B,刪A,再將B改為A。
              dirname, tempname = os.path.split(path)
              path_temp = os.path.join(dirname, tempname)
              while os.path.exists(path_temp):
                tempname = f'{len(tempname)}' + tempname
                path_temp = os.path.join(dirname, tempname)
              def decryption(fp, pt, pw):
                word_app = win32com.client.Dispatch('Word.Application')
                word_app.Visible = 0
                word_app.DisplayAlerts = 0
                doc = word_app.Documents.Open(fp, False, False, False, key)
                doc.SaveAs2(pt, None, False, pw)
                doc.Close()
                word_app.Quit()
             
              decryption(path, path_temp, password)
              os.remove(path) # 刪除原文件
              os.rename(path_temp, path) # 改臨時文件名稱為原文件名稱
              time.sleep(0.5) # 不用刪除
             
            def elistdir(path):
              for file in os.listdir(path):
                file_path = os.path.join(path, file)
                if os.path.isdir(file_path) and file_path==path:#排除子路徑
                  elistdir(file_path)
                  #print(file_path)
                elif os.path.splitext(file_path)[1]=='.docx':
                  #list_name.append(file_path)
                  
                  if file_path != '':
                    print(file_path)
                    try:
                      word_encryption(file_path, key)
                    except:
                      pass
             
            def dlistdir(path):
              for file in os.listdir(path):
                file_path = os.path.join(path, file)
                if os.path.isdir(file_path) and file_path==path:#排除子路徑
                  dlistdir(file_path)
                  #print(file_path)
                elif os.path.splitext(file_path)[1]=='.docx':
                  #list_name.append(file_path)
                  
                  if file_path != '':
                    print(file_path)
                    try:
                      word_decryption(file_path, '')
                    except:
                      pass
             
            if __name__ == '__main__':
              key='12345'                 #加密解密密匙
              filedir=r"C:\Users\Administrator\Desktop"# 指定路徑不包含子路徑
              elistdir(filedir) #遍歷word
              print('encrytion sucess\n Waiting...')
              time.sleep(2)#設置時間隨意操作
              dlistdir(filedir) #遍歷word
              print('decrytion Done')

            實現:

            到此這篇關于Python實現對word文檔添加密碼去除密碼的示例代碼的文章就介紹到這了,更多相關Python word文檔添加密碼去除密碼內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

            相關文章

            • python對常見數據類型的遍歷解析

              python對常見數據類型的遍歷解析

              這篇文章主要介紹了python對常見數據類型的遍歷解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
              2019-08-08
            • Python實現計算最小編輯距離

              Python實現計算最小編輯距離

              這篇文章主要介紹了Python實現計算最小編輯距離的相關代碼,有需要的小伙伴可以參考下
              2016-03-03
            • 在Python中使用lambda高效操作列表的教程

              在Python中使用lambda高效操作列表的教程

              這篇文章主要介紹了在Python中使用lambda高效操作列表的教程,結合了包括map、filter、reduce、sorted等函數,需要的朋友可以參考下
              2015-04-04
            • urllib和BeautifulSoup爬取維基百科的詞條簡單實例

              urllib和BeautifulSoup爬取維基百科的詞條簡單實例

              這篇文章主要介紹了urllib和BeautifulSoup爬取維基百科的詞條簡單實例,具有一定借鑒價值,需要的朋友可以參考下
              2018-01-01
            • Python安裝依賴(包)模塊方法詳解

              Python安裝依賴(包)模塊方法詳解

              Python模塊,簡單說就是一個.py文件,其中可以包含我們需要的任意Python代碼。這篇文章主要介紹了Python安裝依賴(包)模塊方法,需要的朋友可以參考下
              2020-02-02
            • python讀文件保存到字典,修改字典并寫入新文件的實例

              python讀文件保存到字典,修改字典并寫入新文件的實例

              下面小編就為大家分享一篇python讀文件保存到字典,修改字典并寫入新文件的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
              2018-04-04
            • Python拆分大型CSV文件代碼實例

              Python拆分大型CSV文件代碼實例

              這篇文章主要介紹了Python拆分大型CSV文件代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
              2019-10-10
            • python中使用xlrd、xlwt操作excel表格詳解

              python中使用xlrd、xlwt操作excel表格詳解

              這篇文章主要介紹了python中使用xlrd、xlwt操作excel表格詳解,python操作excel主要用到xlrd和xlwt這兩個庫,即xlrd是讀excel,xlwt是寫excel的庫,需要的朋友可以參考下
              2015-01-01
            • Python中Unittest框架的具體使用

              Python中Unittest框架的具體使用

              這篇文章主要介紹了Python中Unittest框架的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
              2019-08-08
            • Python實現進度條和時間預估的示例代碼

              Python實現進度條和時間預估的示例代碼

              這篇文章主要介紹了Python實現進度條和時間預估的代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
              2020-06-06

            最新評論

            hao500彩票 www.assamnaukri.com:六盘水市| www.rareearthsoil.com:衡南县| www.apartemenkuningancity.com:尉犁县| www.burkholderpaving.com:新建县| www.7654666.com:许昌县| www.keybiz.org:桃江县| www.yeo-yeo.com:邹城市| www.fgzcs.com:四平市| www.desertridgesuperblock7north.com:井研县| www.tianjin-banjia.com:遂溪县| www.warnarumah.net:休宁县| www.yadayang.com:镇赉县| www.ah-zszs.com:绿春县| www.ty3399.com:寿宁县| www.gibraltarrocktours.com:宣化县| www.fapuc.com:桂林市| www.corsetcollege.com:略阳县| www.tj-dqhcjt.com:阳城县| www.caboverdedesign.com:桂平市| www.1958difan.com:清远市| www.rordsm.com:会理县| www.stranded-deep.net:德钦县| www.yusxaf.com:金堂县| www.wagescout.com:田林县| www.caefwi.org:桐乡市| www.hg43678.com:陈巴尔虎旗| www.yzzzm.com:柳河县| www.paintsprayerelite.com:灵璧县| www.gjcuk.com:多伦县| www.gotoph.com:屯昌县| www.riseaboveself.org:泗水县| www.820048.com:双流县| www.zyfoodmachine.com:监利县| www.joannaselby.com:昔阳县| www.blissfuljapan.com:邓州市| www.aec-avocats.com:余庆县| www.mmairan.com:彭阳县| www.wynlyn.com:邢台市| www.karamankardesler.com:江陵县| www.blogcampghana.com:华蓥市| www.buffetvabeach.com:武威市| www.npathfinder.com:三原县| www.treasuredspotbookreviews.com:卓资县| www.pj558888.com:尼勒克县| www.cp5157.com:基隆市| www.zhgtymodel.com:中西区| www.mfnck.com:嘉峪关市| www.jamesstephenshurling.com:张家港市| www.fionarr.com:苏尼特右旗| www.ccredimix.com:昌江| www.soxdeal.com:浮梁县| www.siquanlvzhi.com:宣化县| www.hibiscus-cottages.com:佳木斯市| www.cxrzdz.com:荥经县| www.suqinwood.com:蛟河市| www.g888886.com:德兴市| www.2009k.com:桃园市| www.52okcar.com:建平县| www.180xu.com:六安市| www.holytemplenc.org:公安县| www.threecrownsracing.com:长阳| www.borealmatters.org:太湖县| www.wqqnw.com:榆社县| www.hndth.com:威信县| www.512825.com:曲麻莱县| www.mydzs.com:镇巴县| www.stevebayer.com:旬阳县| www.brochesyalfileres.com:迁安市| www.rpgint.com:翁源县| www.917wm.com:乾安县| www.dessertsbyrondi.com:宁晋县| www.baliemvalley.com:乌兰浩特市| www.waitanka.com:建水县| www.wwwhg3533.com:新乡县| www.attitude-digital.com:余姚市| www.specialdayvideo.com:织金县| www.3182114.com:印江| www.donyahost.com:常山县| www.hougangopenmri.com:德保县| www.shmmlaw.com:西畴县| www.hjzmdc.cn:伊宁市| www.techidana.com:易门县| www.114767.com:嵩明县| www.tswtchkviii.net:枣庄市|