2017-08-21 192 views
-1

我有這個在我的腳本:的getElementsByTagName(「A」)停止服務器重新啓動後,工作

$link = $ie.Document.GetElementsByTagName('a') | 
     Where-Object {$_.InnerText -eq'xxxxxx'} | 
     select -First 1 

這是工作的所有罰款,但突然停止工作;它在服務器重啓後停止工作,並且可能有更新,這個腳本仍然在我的機器上工作。

服務器有PowerShell v5.0;而在我的本地機器上它是v5.1。

這可能是問題嗎?

+1

請編輯問題並添加更多詳細信息,描述確切地說,「停止工作」的含義。沒有結果?錯誤的結果?錯誤信息? – vonPryz

回答

1

在使用IE com對象時,我幾乎總是遇到問題。

嘗試使用

$IE.Document.IHTMLDocument3_getElementsByTagName() 

代替,看看是否能解決你的問題,IHTMLDocument2/3方法一般在PowerShell中的後續版本更可靠。

+0

$ ie.document.body.getElementsByTagName與我合作,但我仍然關心這一點,我會嘗試你的。 – Sam

+0

它也有效,所以哪一個最好? – Sam

+1

@Sam我發現'.body'要慢得多,如果你真的擔心'最好'的話,我會用'Measure-Command'比較兩者,否則就投擲一枚硬幣:) – ConnorLSW

相關問題