由任务计划程序

时间:2016-02-07 19:02:46

标签: powershell https wget taskscheduler

我需要加载https文件。我使用wget选项--no-check-certificate。如果由ISE调试器启动,它将完美运行。如果我开始使用cmd-console:./myScript.ps1,它甚至可以完美运行。但是一旦我设置任务计划程序以启动我的脚本,我得到:

--2016-02-07 19:44:01--  https://www.dailyfx.com/calendar/
Resolving www.dailyfx.com... 104.87.22.147
Connecting to www.dailyfx.com|104.87.22.147|:443... connected.
WARNING: cannot verify www.dailyfx.com's certificate, issued by `/C=US/O=GeoTrust Inc./CN=GeoTrust SSL CA - G3':
  Unable to locally verify the issuer's authority.
WARNING: certificate common name `fxcm.com' doesn't match requested host name `www.dailyfx.com'.
HTTP request sent, awaiting response... 403 Forbidden
2016-02-07 19:44:01 ERROR 403: Forbidden.

在致电之前,我设置了$ArgList,然后拨打wget

$urlDFx  = "https://www.dailyfx.com/calendar/"
$argList = "$urlDFx -O $rawDFx -o $logDFx --no-check-certificate"
$wg = Start-Process wget -wait -NoNewWindow -PassThru -ArgumentList $argList

其他变量是各种本地文件。

同样,它在ISE和CMD控制台中工作,但如果由任务计划程序启动则不行。脚本的另一部分执行没有任何问题:我做了另一个http文件并解析它。

我该怎么办?

1 个答案:

答案 0 :(得分:0)

即使我不明白为什么现在有效,我也找到了解决方案! 我设置:

    $argList = "$urlDFx -O $rawDFx -o $logDFx --no-check-certificate --verbose "

1)即使任务调度程序已启动脚本,它仍然有效。 2)wget的日志文件与之前完全相同。 (可能现在 - 跳过了?)