Python - Скрыть пароль для получения данных из защищенного файла Excel без вмешательства пользователя. - PullRequest
0 голосов
/ 03 мая 2020

У меня есть скрипт, который запускается в течение ночи, чтобы загрузить некоторые таблицы из моей базы данных. Этот сценарий запускается автоматически (не требуется никакого взаимодействия с пользователем).

Один из модулей - получить данные из 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='******')

Любое предложение?

1 Ответ

2 голосов
/ 03 мая 2020

Обычно вы используете переменную окружения. Чтобы узнать, как установить его на Windows, см., Например, здесь .

import os
wb = xw.Book(PATH, password=os.environ['EXCEL_FILE_PASSWORD'])

Обратите внимание, что это позволяет сохранить пароль в исходном коде, чтобы он не заканчивался например, на вашем репо Git. Но любой, кто имеет доступ к компьютеру с переменной среды, также имеет доступ к его содержимому, которое является вашим паролем.

...