python - 隐藏密码以从受保护的 Excel 文件中获取数据,无需用户干预
问题描述
我有一个在夜间运行的脚本,以便从我的数据库中加载一些表。此脚本自动运行(不需要任何用户交互)。
其中一个模块是从 excel 中获取一些数据,这是一个受保护的文件,它需要密码。
要从我的文件中获取数据,我使用以下代码:
import xlwings as xw
PATH = 'filename.xlsx'
app = xw.App(visible=False)
wb = xw.Book(PATH, password='ASD')
sheet = wb.sheets['sheet']
我的问题是:还有其他方法可以隐藏脚本中的密码吗?也许我正在尝试获取以下代码:
wb = xw.Book(PATH, password='******')
有什么建议吗?
解决方案
您通常会使用环境变量。有关如何在 Windows 上设置一个,请参见此处。
import os
wb = xw.Book(PATH, password=os.environ['EXCEL_FILE_PASSWORD'])
请注意,这允许您将密码保留在源代码之外,因此它不会最终出现在您的 Git 存储库中。但是任何可以使用环境变量访问计算机的人也可以访问它的内容,即您的密码。
推荐阅读
- python - Handle keyboard interruption and file writing
- google-chrome-devtools - 在 Chrome 调试器中创建全局断点?
- c# - 将 C++ 转换为 C# 时图像上的 DCT 转换结果不同的问题
- jquery - 使用 .closest 在 div 中获取具有值的输入字段
- aem - AEM:如何使用资源类型获取已注册的吊索模型列表
- macos - Safari 12 中不受支持的 Safari 扩展的修复/解决方法?
- angular - Cross-Origin Request Blocked Angular 4,POST Request
- java - Generate array with random numbers
- ruby - 我可以选择关闭公用文件夹下的默认页面吗?
- r - Running raster::stackApply() function in parallel