Python批量給excel文件加密的操作教程
一、安裝pypiwin32包
調(diào)用win32com.client,需先要安裝pypiwin32包。打開cmd,安裝語句如下:
pip install pypiwin32
若安裝成功,會顯示結(jié)果如下:

二、定義給excel加密的函數(shù)
我們先定義一個給單個excel加密的函數(shù),具體代碼如下:
import win32com.client
#excel加密函數(shù)
def pwd_xlsx(old_filename, new_filename, pwd_str, pw_str=''):
'''
old_filename:舊文件名
new_filename:新文件名
pwd_str:保存的新文件密碼
pw_str:打開文件密碼,若無訪問密碼,則設(shè)為''
'''
xcl = win32com.client.Dispatch("Excel.Application")
wb = xcl.Workbooks.Open(old_filename, False, False, None, pw_str)
xcl.DisplayAlerts = False
#關(guān)閉顯示告警對話框
wb.SaveAs(new_filename, None, pwd_str, '')
#保存時可設(shè)置訪問密碼
xcl.Quit()
主要功能是輸入舊文件,生成新文件,并對新文件加密。
三、給單個excel加密
在批量加密之前,先調(diào)用上一節(jié)的函數(shù)對單個文件進(jìn)行加密。具體代碼如下:
filename = "F:\\公眾號\\71.excel自動加密\\train_u6lujuX_CVtuZ9i.csv" pwd_xlsx(filename,filename, '1111') # 三個參數(shù):待加密文件,加密后名稱,密碼
得到結(jié)果:

從上述pwd_xlsx函數(shù)調(diào)用語句可知,待加密文件和加密后文件是同一個,且設(shè)置的文件密碼是1111(密碼可根據(jù)需要自行設(shè)置)。即打開原始文件,保存新文件并加密。由于新文件和原始文件同名,實際是用加密后的新文件覆蓋了原始文件。
注意1: 我嘗試用os.chdir函數(shù)定義存儲原始文件的文件夾,在pwd_xlsx函數(shù)中只放文件名,結(jié)果報錯。
注意2: 該函數(shù)對excel文件可以加密,若輸入的是csv文件,雖然不會報錯,但是生成的文件并未加密。
若想加密后的文件不覆蓋原始文件,具體代碼如下:
old_filename = "F:\\公眾號\\71.excel自動加密\\date2.xlsx" new_filename = "F:\\公眾號\\71.excel自動加密\\date2_m.xlsx" pwd_xlsx(old_filename, new_filename, '123') # 三個參數(shù):待加密文件,加密后名稱,密碼
得到結(jié)果:

四、批量給excel加密
首先把需要加密的文件放到一個文件夾中,應(yīng)用如下程序可以獲取該文件夾中的所有文件名稱。
import os
folder_path = "F:\\公眾號\\71.excel自動加密\\批量加密"
#文件夾路徑
file_list = os.listdir(folder_path)
#獲取文件夾中所有文件的文件名
for file_name in file_list:
print(file_name)
#打印文件夾中的文件名
得到結(jié)果:
pl_date1.xlsx pl_date1_m.xlsx pl_date2.xlsx pl_date3.xlsx pl_date4.xlsx pl_date5.xlsx
原始文件夾內(nèi)容如下:

可以發(fā)現(xiàn)兩者是一致的。接著調(diào)整一下上述代碼,生成原始文件路徑和名稱,以及新文件路徑和名稱,并批量調(diào)用加密函數(shù),生成加密文件,具體代碼如下:
import os
folder_path = "F:\\公眾號\\71.excel自動加密\\批量加密"
#文件夾路徑
file_list = os.listdir(folder_path)
#獲取文件夾中所有文件的文件名
for file_name in file_list:
old_filename = folder_path + '\\' + file_name
#原始文件
new_filename = old_filename.replace('.xlsx', '_m.xlsx')
#新加密文件
print(old_filename)
print(new_filename)
pwd_xlsx(old_filename, new_filename, '123')
#調(diào)用加密函數(shù)對原始文件進(jìn)行加密并生成新文件,文件密碼123
得到結(jié)果:

至此,Python中批量給excel文件加密已講解完畢,感興趣的朋友可以自己跟著代碼嘗試一遍圖片。
以上就是Python批量給excel文件加密的操作教程的詳細(xì)內(nèi)容,更多關(guān)于Python excel文件加密的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python將博客內(nèi)容html導(dǎo)出為Markdown格式
Python將博客內(nèi)容html導(dǎo)出為Markdown格式,通過博客url地址抓取文章,分析并提取出文章標(biāo)題和內(nèi)容,將內(nèi)容構(gòu)建成html,再轉(zhuǎn)換為Markdown文件2025-04-04
使用Python爬蟲框架獲取HTML網(wǎng)頁中指定區(qū)域的數(shù)據(jù)
在當(dāng)今互聯(lián)網(wǎng)時代,數(shù)據(jù)已經(jīng)成為了一種寶貴的資源,無論是進(jìn)行市場分析、輿情監(jiān)控,還是進(jìn)行學(xué)術(shù)研究,獲取網(wǎng)頁中的數(shù)據(jù)都是一個非常重要的步驟,Python提供了多種爬蟲框架來幫助我們高效地獲取網(wǎng)頁數(shù)據(jù),本文將詳細(xì)介紹如何使用Python爬蟲框架來獲取HTML網(wǎng)頁中指定區(qū)域的數(shù)據(jù)2025-03-03
Python使用sklearn庫實現(xiàn)的各種分類算法簡單應(yīng)用小結(jié)
這篇文章主要介紹了Python使用sklearn庫實現(xiàn)的各種分類算法,結(jié)合實例形式分析了Python使用sklearn庫實現(xiàn)的KNN、SVM、LR、決策樹、隨機森林等算法實現(xiàn)技巧,需要的朋友可以參考下2019-07-07
利用Python自動化處理PPT樣式與結(jié)構(gòu)的解決方案
PowerPoint(PPT)是職場中常用的辦公工具,但手動設(shè)計和調(diào)整樣式往往耗時耗力,本文將介紹一套基于Python的自動化解決方案,通過代碼實現(xiàn)提取PPT樣式,應(yīng)用樣式到模板和幻燈片增刪與復(fù)制,需要的朋友可以參考下2025-04-04

