InternetExplorer.Application COM 对象的 getElementById 方法无效
InternetExplorer.Application COM object's getElementById method not working
我是 powershell 的新手,我正在尝试自动登录网站,我浏览了很多示例,但 NONE 工作正常。
例如这个非常简单的脚本:
$ie = New-Object -comobject InternetExplorer.Application
$ie.Visible = $true
$ie.Navigate($URL)
$ie.Navigate("www.facebook.com")
$ie.document.getElementById("pass")
$ie.document.getElementById("pass").value = "Hi"
我应该在密码字段中得到 "Hi",但我得到的却是这个
我在找到的所有示例中都遇到了这个错误,这是怎么回事?这是 Powershell 不再支持的东西吗?
我有 windows 10.
不要使用 getElementById
。使用 IHTMLDocument3_getElementById
,例如:
$ie.Document.IHTMLDocument3_getElementById("email").value = "asd123"
您也可以对其他方法执行此操作,例如 IHTMLDocument3_getElementsByName
。
我应该补充一点,我不知道为什么这行得通 - 我只是使用以下查询在 Document 对象上查找任何有用的成员并使用它们
$ie.Document | Get-Member | where Name -like '*get*'
我是 powershell 的新手,我正在尝试自动登录网站,我浏览了很多示例,但 NONE 工作正常。
例如这个非常简单的脚本:
$ie = New-Object -comobject InternetExplorer.Application
$ie.Visible = $true
$ie.Navigate($URL)
$ie.Navigate("www.facebook.com")
$ie.document.getElementById("pass")
$ie.document.getElementById("pass").value = "Hi"
我应该在密码字段中得到 "Hi",但我得到的却是这个
我在找到的所有示例中都遇到了这个错误,这是怎么回事?这是 Powershell 不再支持的东西吗?
我有 windows 10.
不要使用 getElementById
。使用 IHTMLDocument3_getElementById
,例如:
$ie.Document.IHTMLDocument3_getElementById("email").value = "asd123"
您也可以对其他方法执行此操作,例如 IHTMLDocument3_getElementsByName
。
我应该补充一点,我不知道为什么这行得通 - 我只是使用以下查询在 Document 对象上查找任何有用的成员并使用它们
$ie.Document | Get-Member | where Name -like '*get*'