Google 通过任务计划程序驱动 API 无效的机密文件

Google Drive API Invalid Secrets File Through Task Scheduler

我需要一些帮助来解决一些应该很容易解决的问题。我的计算机上的这个文件夹中有以下文件:C:\Users\theda\Documents\Python\CANSLIM Script

这些相同的文件(.bat 文件除外)加上我的 Python 代码位于此文件夹中:C:\Users\theda\PycharmProjects\CANSLIM_Script

.bat文件代码:

cmd /k python C:\Users\theda\PycharmProjects\CANSLIM_Script\canslim_script.py

当我通过双击 run_script.bat 来 运行 我的脚本时,它能够找到我的 client_secrets.json 文件并使用 Google Drive 对我进行身份验证。但是,当我通过 Windows Task Scheduler 运行 相同的 .bat 文件时,我得到以下回溯:

Traceback (most recent call last):
File "C:\Program Files\Python37\lib\site-packages\oauth2client\clientsecrets.py", line 121, in _loadfile 
with open(filename, 'r') as fp:
FileNotFoundError: [Errno 2] No such file or directory: 'client_secrets.json'

我需要把我的credentials/settings/etc放在哪里。对于 PyDrive 当 运行 通过 Windows 任务计划程序使用 .bat 文件连接 Python 脚本?或者,我怎样才能弄清楚它在哪里寻找文件?

我能够通过使用以下代码行为我的身份验证和设置文件提供一个位置来实现它。希望对某人有所帮助:

secrets_file = os.path.normpath("C:/Users/theda/Documents/Python/CANSLIM Script/client_secrets.json")
settings_file = os.path.normpath("C:/Users/theda/Documents/Python/CANSLIM Script/settings.yaml")

gauth = GoogleAuth(settings_file=settings_file)

GoogleAuth.DEFAULT_SETTINGS['client_config_file'] = secrets_file