在打开网站后,该框架内有一个框架菜单栏是他们的,例如菜单栏5按钮是: -
搜索(带下划线的e和带搜索的下拉箭头)和窗口(带W的下划线箭头也带有窗口)我想点击搜索。
我尝试使用href,id
但无法点击搜索。
$Url = “some site”
$Username=”xxx”
$Password=”xxx”
$IE = New-Object -com internetexplorer.application;
$IE.visible = $true;
$IE.navigate($url);
while ($IE.Busy -eq $true)
{
Start-Sleep -Milliseconds 2000;
}
$IE.Document.getElementById(“USERNAME”).value = $Username
$IE.Document.getElementByID(“PIN”).value=$Password
$IE.Document.getElementById(“HardcodedSub”).Click()
while($ie.busy) {sleep 5}
$Link = $ie.Document.getElementsByTagName("a") | where-object {$_.id -eq 'menu_2'}
$Link.click()
error:-You cannot call a method on a null-valued expression.
At line:25 char:1
+ $Link.click()
+ ~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [], RuntimeException
+ FullyQualifiedErrorId : InvokeMethodOnNull
inspect element:-
<a id="menu_2" tabindex="2" class="menu_unselected_text" href="javascript:window.parent.role_main.cai_main.setActKeyMenuState(2)">S<u>e</u>arch<img border="0" src="/CAisd/img/arrow_asc_bk.png" width="15" height="10"></a>
答案 0 :(得分:0)
为什么下面的行不能使用相同的GetElementById()。
$Link = $ie.Document.getElementById("menu_2")
最好在PowerShell ISE中进行调试或逐行执行,并在调用方法之前完全加载页面。
此致
Kvprasoon