<rp id="kut09"><nav id="kut09"></nav></rp>
<rp id="kut09"></rp>
  • <tt id="kut09"></tt>
    <tt id="kut09"><tbody id="kut09"></tbody></tt>
    1. <u id="kut09"></u>
    2. <tt id="kut09"><noscript id="kut09"></noscript></tt>
    3. 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

      最新評論

      218彩票 www.cnsxmr.com:宽城| www.saracor.com:西乌珠穆沁旗| www.z9697.com:澳门| www.juao56.com:凤冈县| www.theeconomicsbook.com:南城县| www.janainaewilliam.com:祁阳县| www.matiastroncoso.com:平阴县| www.umudumsohbet.com:永丰县| www.hnbdfw.com:阳高县| www.myspaceproxyace.com:自治县| www.hnwwt.cn:闻喜县| www.treasuredspotbookreviews.com:堆龙德庆县| www.pictain.com:登封市| www.lacettiid.com:开江县| www.huaye-tj.com:五家渠市| www.themarie.org:湾仔区| www.rqxbw.cn:涡阳县| www.theabsenceofsounds.com:莱芜市| www.ccwanzhou.com:诸暨市| www.150mee.com:准格尔旗| www.santogiuseppe.com:建湖县| www.mflqx.com:饶河县| www.emedicalweb.com:苍南县| www.ranthemptc.com:卢湾区| www.anjiutea.com:翁牛特旗| www.cosplay-world.net:澎湖县| www.ontwolegs.com:扎赉特旗| www.kmm-llc.com:无棣县| www.avancemosconosur.org:定兴县| www.j1wt.com:公安县| www.rdkfw.cn:渭源县| www.ywijx.com:寿宁县| www.cbhfitness.com:定安县| www.artpairs.com:康马县| www.dalicun.com:全南县| www.nbphq.cn:淳安县| www.mizu16.com:莱州市| www.wphammer.com:宜丰县| www.hongxingbj.com:偃师市| www.texastroop424.org:全椒县| www.techtranindia.com:涡阳县| www.aashbooksplus.com:太康县| www.cp7173.com:桓台县| www.zhongyancheng.com:宁乡县| www.e-young2009.com:南漳县| www.davidmshapiro.com:莱州市| www.levelnsquare.com:河西区| www.viralcoins.com:若尔盖县| www.redrosemovie.com:德清县| www.hsx-hsx.com:长武县| www.uckkimya.com:长春市| www.chuech-photo.com:昭通市| www.yongbeikeji.cn:霍邱县| www.zhengyuxiangsu.com:祥云县| www.js28928.com:曲靖市| www.fcgoo.com:独山县| www.blackeyedtease.com:喀喇沁旗| www.chinagoodbuy.com:天长市| www.sandersfieldtrees.org:青神县| www.waitanka.com:固始县| www.bihaiwanhg.com:舞钢市| www.th336.com:苏尼特右旗| www.alamat-sekolah.com:沾化县| www.cropbowtie.com:和龙市| www.jzdbzz.com:山丹县| www.5i7du.com:永顺县| www.bxxnn.com:永清县| www.aeroflex-cargo.com:曲麻莱县| www.qzxihu.com:平阳县| www.wwwhg9693.com:新竹县| www.damnkidbrand.org:内黄县| www.acdnq.com:汉中市| www.ryccc.com:厦门市| www.pressplaycoach.com:泾阳县| www.jinda109.com:泽普县| www.amde-in-china.com:霍州市| www.ovomasturbador.com:桓台县| www.932382.com:莱阳市| www.chambres-dhotes-le-cigalon.com:翼城县| www.smartmobilelab.com:承德市| www.fz559.com:墨脱县| www.ottomantranslate.com:朝阳区| www.ijazzclub.com:苍溪县| www.mahzarxp.com:克东县|