-1

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

--2016-02-07 19:44:01-- https://www.dailyfx.com/calendar/
解决 www.dailyfx.com... 104.87.22.147
连接到 www.dailyfx.com|104.87.22.147|:443... 已连接。
警告:无法验证 www.dailyfx.com 的证书,由 `/C=US/O=GeoTrust Inc./CN=GeoTrust SSL CA - G3' 颁发:
  无法在本地验证颁发者的权限。
警告:证书公用名“fxcm.com”与请求的主机名“www.dailyfx.com”不匹配。
HTTP 请求已发送,等待响应... 403 Forbidden
2016-02-07 19:44:01 错误 403:禁止。

在调用之前我设置$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 文件并解析它。

我能做些什么?

4

1 回答 1

0

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

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

1)即使任务调度程序已经启动了脚本,它也可以工作。2) wget 的日志文件包含与以前完全相同的内容。(可能现在 --verbose 被跳过了??)

于 2016-02-07T20:50:07.613 回答