尝试使用 PowerShell 解析和抓取网页,这是我们拥有的一种软件库存管理网站,代码如下
$test = Invoke-WebRequest -UseBasicParsing -Uri https://testuser -UseDefaultCredentials
$test.ToString() -split "[`r`n]" |
Select-String "Usbser.sys" |
ConvertFrom-StringData
它可以工作,除了我还需要我正在搜索的 s/w 版本。
电流输出:
Name Value
---- -----
<td class "info">Usbser.sys </td
$test.ToString()
给我以下数据:
<td class="info">Usbser.sys </td>
<td class="info">10.0.16299.334</td>
如何从当前输出中裁剪出这些标签并让它显示版本信息 10.0.16299.334?
Edit1:所以我设法按照 Lieven 的建议找到了课程
className :
id : installedSoftwareContainer
tagName : DIV
parentElement : System.__ComObject
style : System.__ComObject
onhelp :
onclick :
ondblclick :
onkeydown :
onkeyup :
onkeypress :
onmouseout :
onmouseover :
onmousemove :
onmousedown :
onmouseup :
document : mshtml.HTMLDocumentClass
title :
language :
onselectstart :
sourceIndex : 1496
recordNumber :
lang :
offsetLeft : 0
offsetTop : 0
offsetWidth : 0
offsetHeight : 0
offsetParent :
innerHTML :
<table width="100%" border="1" cellspacing="0" cellpadding="5">
<tbody><tr>
<td class="caption">Name</td>
<td class="caption">Version</td>
</tr>
<tr>
<td class="info">1E NomadBranch x64</td>
<td class="info">6.3.201</td>
InnerText : 1E NomadBranch x646.3.201
但是当我尝试下面的代码时,我什么也没得到
$test = Invoke-WebRequest -Uri https://testurl.com -UseDefaultCredentials
$test.ParsedHtml.getElementbyid('installedsoftwarecontainer') | select innertext
我究竟做错了什么?