我正在研究SCCM Application Packager食谱,以自动化JetBrains Toolbox的下载,打包和部署。我正在尝试使用Invoke-WebRequest cmdlet将外部文本为“直接链接”的href值分配给名为$ LinkPath的变量
$LinkPath = ((Invoke-WebRequest https://www.jetbrains.com/toolbox/download/download-thanks.html?platform=windows) | Select-Object -ExpandProperty Links | Where-Object -Property outerText -eq "direct link").href
这一直返回URL:
关于://://data.services.jetbrains.com/products/download?code = ALL&platform = windows
查看返回的对象时,我看到相同的URL:
innerHTML : direct link
innerText : direct link
outerHTML : <A id=download-link href="about://data.services.jetbrains.com/products/download?code=ALL&a
mp;platform=windows" data-release-download-link="">direct link</A>
outerText : direct link
tagName : A
id : download-link
href : about://data.services.jetbrains.com/products/download?code=ALL&platform=windows
data-release-download-link :
如何将访问该页面时自动下载的安装程序的URL分配给$ LinkPath vairable,或者将您在浏览器中检查“直接链接”链接的属性(当前为https://download.jetbrains.com/toolbox/jetbrains-toolbox-1.14.5179.exe)时获得的URL分配给$ LinkPath vairable关于://://data.services.jetbrains.com/products/download?code = ALL&platform = windows?
最佳答案
我找到了一个巧克力项目,该项目的执行方式略有不同。它使用这里的Json数据确定版本:
https://data.services.jetbrains.com/products/releases?code=TBA&latest=true&type=release
我使用ConvertFrom-Json从上面的页面获取当前的下载URL:
$releases = 'https://data.services.jetbrains.com/products/releases?code=TBA&latest=true&type=release'
$json = Invoke-WebRequest $releases | ConvertFrom-Json
$LinkPath = $json.TBA.downloads.windows.link
关于powershell - Invoke-WebRequest链接属性值以大约://开头,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56499644/