我有一个python 3脚本,它依赖于selenium
,bs4
,smtplib
和xlsxwriter
(除其他外)。该脚本会抓取一个网站,将大量数据保存到Excel文件中,然后通过电子邮件向我发送特别感兴趣的较小数据块。我已经多次运行该脚本并且工作正常(即,它编写excel文件并通过电子邮件发送给我)。
最近,我在Windows 10上使用Task Scheduler将此脚本设置为每24小时运行一次。该程序显然运行(并由任务计划程序记录为成功)。问题是当任务计划程序执行程序时,我只收到包含较小数据块的电子邮件。不写入Excel文件。
在“任务计划程序”下,我将以下内容放在“程序/脚本”框中:C:\path\to\python\python.exe
。在Arguments下,我把:C:\path\to\script.py
。
注意,根据之前的SO question,我尝试将cmd
放在Program / Script下,然后C:\path\to\python\python.exe C:\path\to\script.py
作为参数。在后一个cmd
设置中,该程序根本没有运行。
不确定是否相关,但我将c:\path\to\python\python36-32\
和c:\path\to\scriptfolder\
添加到我的系统变量路径中。我把#!python3
放在脚本的顶部。感谢。
答案 0 :(得分:2)
解决。在PowerShell中运行时,我的脚本将Excel文件写入当前工作目录。通过任务计划程序运行时,文件将写入“开始”(可选)框中指定的路径。每个StackOverflow建议我都有python.exe的路径。所以该文件是用c:\ python \ python36-32编写的。我将Start in(可选)框更改为保存Excel文件的首选路径,并且它工作正常。