如何使用PowerShell单击href超链接

如何使用PowerShell单击href超链接,powershell,hyperlink,click,href,Powershell,Hyperlink,Click,Href,我正在编写一个PowerShell脚本来登录网站并下载一些报告。我对PowerShell几乎一无所知 我已经能够将弗兰肯斯坦的脚本一起登录,但我有麻烦点击菜单按钮。检查元件显示按钮(本例中标记为“abc”),如下所示: 任何帮助都将不胜感激 这对我很有效。我需要使用getElementsByTagName(“a”): $Click=$ie.Document.getElementsByTagName(“a”)|其中的对象{$\uz.href-match'abc'} $Click.Click()您的

我正在编写一个PowerShell脚本来登录网站并下载一些报告。我对PowerShell几乎一无所知

我已经能够将弗兰肯斯坦的脚本一起登录,但我有麻烦点击菜单按钮。检查元件显示按钮(本例中标记为“abc”),如下所示:


任何帮助都将不胜感激

这对我很有效。我需要使用getElementsByTagName(“a”):

$Click=$ie.Document.getElementsByTagName(“a”)|其中的对象{$\uz.href-match'abc'}
$Click.Click()

您的power shell看起来不错,至少乍一看是这样,但您显示的HTML是锚定标记,而不是按钮?渲染时它看起来像普通的HTML链接吗?如果是这样,您的“Document.getElementsByTagName(“按钮”)可能需要是“Document.getElementsByTagName(“a”)?@Mark我应该说我对HTML/CSS/JS几乎一无所知。下面是代码的屏幕截图:谢谢!!@Mark呈现时,有一个响应性侧栏菜单,您可以在其中向下钻取各种导航选项。导航到“报告”部分后,当单击不同类型报告的子部分时,非m在显示所选报告之前,页面的chs部分会暂时缓冲(?)并说正在加载。我不确定这是否提供了任何细节。看起来有一个JavaScript层?上面代码中引用的按钮是登录按钮,而不是我现在尝试单击的按钮。这对我来说很有效(只需要“a”)“来自@Mark:$Click=$ie.Document.getElementsByTagName(“a”)| Where Object{$\uuz.href-match'abc'}$Click.Click()
<a class="category-item-text" href="#">abc</a>
$ie.Visible= $true # Make it visible

$username="MYUSERNAME"

$password="MYPASSWORD"

$ie.Navigate("https://MY.WEBPAGE/yada/yada/yada")

While ($ie.Busy -eq $true) {Start-Sleep -Seconds 3;}

$usernamefield = $ie.document.getElementByID('LOGIN_FIELD_LABEL')
$usernamefield.value = "$username"

$passwordfield = $ie.document.getElementByID('PASSWORD_FIELD_LABEL')
$passwordfield.value = "$password"

$Click=$ie.Document.getElementsByTagName("button") | Where-Object {$_.type -eq 'submit'}
$Click.click()

While ($ie.Busy -eq $true) {Start-Sleep -Seconds 3;}

$ie.Navigate("https://MY.WEBPAGE/yada/yada/REPORTS")

While ($ie.Busy -eq $true) {Start-Sleep -Seconds 3;}