【发布时间】:2017-05-26 14:59:07
【问题描述】:
我正在使用 PowerShell 脚本从网页获取动态文件名。
当我在 PowerShell 提示符下运行以下代码时,它会返回文件名的输出,例如abcxyz.jpeg.
((Invoke-WebRequest -Uri ‘http://myurl.x.y/abc/pqr/’).Links | Where innerHTML -like “abc*.jpeg”).href
然后我将代码复制到执行 PowerShell 脚本的 Jenkins 作业中。
这里没有返回文件名,而是看到以下错误:
Invoke-WebRequest : 无法解析响应内容,因为 Internet Explorer 引擎不可用,或者 Internet Explorer 的首次启动配置不完整......
我试过用wget替换Invoke-WebRequest,使用-useBasicParsing等。一些网站建议打开和配置Internet Explorer,这已经完成了,不过我也试过了。
Jenkins 作业以管理员用户身份运行。所有其他 PowerShell 命令(例如读取文件、更新文件)都可以正常工作,但仅在上述命令中出现错误。
如果Invoke-WebRequest 在 PowerShell 命令提示符下工作正常,那么为什么不能通过 Jenkins Job 工作呢? PowerShell 脚本是在我正在执行作业的同一台从机上执行的。
我认为这更多地与 Jenkins 环境有关,请指教。
【问题讨论】:
-
我怀疑 IE 首次启动配置已经为您的用户完成,但不是 Jenkins 用户。您是否在首选搜索引擎中输入了“Internet Explorer 的首次启动配置未完成”?它应该给你一吨的结果。您是否遵循了这些结果中给出的建议?
-
你试过
to open and configure Internet Explorer下Administrator用户吗? -
非常感谢 @AnsgarWiechers 和 beatcracker 指导我配置 Internet Explorer...我假设问题出在 Jenkins 端。
标签: powershell jenkins