我正在使用python进行自动化,我已经创建了一个只读的excel文件,但是否有可能使其密码保护写入?我已经走了这么远
with pd.ExcelWriter("asd.xlsx", engine="xlsxwriter") as excel_writer: df4.to_excel(excel_writer, index=False, sheet_name="Sheet1") excel_writer.book.read_only_recommended()
字符串
gijlo24d1#
您可以通过Aspose.Cells for Python通过Java轻松完成此任务。请参阅以下示例代码,该代码将使Excel文件具有密码写保护,供您参考。例如:示例代码:
import jpype import asposecells jpype.startJVM() from asposecells.api import Workbook # Load the MS Excel file. workbook = Workbook("asd.xlsx") # Write protect workbook with password. workbook.getSettings().getWriteProtection().setPassword("1234"); # Specify author while write protecting workbook. workbook.getSettings().getWriteProtection().setAuthor("testauthor1"); # Save the write-protected Excel file. workbook.save("out_protected-asd.xlsx")
字符串当您手动将输出文件打开到MS Excel中时,系统会提示您指定写保护密码。如果您想更改/更新文件中的内容,请给予正确的密码。否则,您可以以只读方式打开文件。您也可以在专用的forums中发布您的查询或评论。PS.我在Aspose担任支持开发人员/布道者。
hujrc8aj2#
有无数种方法可以完成这个任务。这个答案有几个假设.例如,您是否希望仅使用Pandas库来完成密码保护?如果是这样,那么这是不可能的(reference source),或者如果使用另一个库来修改工作簿或工作表就足够了。我假设后者。一些潜在的解决方案是使用Aspose.Cells library向工作簿添加密码保护。
ASPOSE保护类型:
#Libraries import jpype import asposecells import pandas as pd jpype.startJVM() from asposecells.api import Workbook, ProtectionType #Load Excel File workbook = Workbook("asd.xlsx") #Add password protection workbook.protect(ProtectionType.STRUCTURE, "password") #Save the protected excel file workbook.save("protected-asd.xlsx") #Continue with Pandas dataframe here using the protected file... with pd.ExcelWriter("protected-asd.xlsx", engine="xlsxwriter") as excel_writer: df4.to_excel(excel_writer, index=False, sheet_name="Sheet1")
qxgroojn3#
你需要使用Python通过密码打开它,如下所示:
import io import openpyxl import msoffcrypto decryptedWorkbook = io.BytesIO() with open('yourFile.xlsx', 'rb') as file: excelFile = msoffcrypto.OfficeFile(file) excelFile.load_key(password='your password') excelFile.decrypt(decryptedWorkbook) myWorkbook = openpyxl.load_workbook(filename=decryptedWorkbook)
3条答案
按热度按时间gijlo24d1#
您可以通过Aspose.Cells for Python通过Java轻松完成此任务。请参阅以下示例代码,该代码将使Excel文件具有密码写保护,供您参考。例如:示例代码:
字符串
当您手动将输出文件打开到MS Excel中时,系统会提示您指定写保护密码。如果您想更改/更新文件中的内容,请给予正确的密码。否则,您可以以只读方式打开文件。
您也可以在专用的forums中发布您的查询或评论。
PS.我在Aspose担任支持开发人员/布道者。
hujrc8aj2#
有无数种方法可以完成这个任务。这个答案有几个假设.
例如,您是否希望仅使用Pandas库来完成密码保护?如果是这样,那么这是不可能的(reference source),或者如果使用另一个库来修改工作簿或工作表就足够了。我假设后者。
一些潜在的解决方案是使用Aspose.Cells library向工作簿添加密码保护。
ASPOSE保护类型:
字符串
qxgroojn3#
你需要使用Python通过密码打开它,如下所示:
字符串