目前我正在编写一个脚本来自动化IE中的过程,以添加计算机名称及其MAC地址,以便我们可以镜像它们。该页面有两个字段,一个用于MAC地址,另一个用于计算机名称,然后是一个新添加按钮。目前仍需手动输入,但我打算从csv文件中读取以一次处理大量数据。
我目前遇到的问题是每当出现重复记录时,javascript弹出窗口会告诉你。弹出窗口会禁用与IE页面的交互。我需要一种方法在条目之间关闭弹出窗口。
这是我目前代码的样子。
我目前遇到的问题是每当出现重复记录时,javascript弹出窗口会告诉你。弹出窗口会禁用与IE页面的交互。我需要一种方法在条目之间关闭弹出窗口。
这是我目前代码的样子。
cls
$URL = ""
$iterator = 1;
#starts IE
$ie = new-object -ComObject "InternetExplorer.Application"
#visible for testing purposes
$ie.visible = $true
#$ie.silent = $true
$ie.navigate($URL)
#Manual Input
$newMAC = read-host -prompt 'Input MAC here'
$newNAME = read-host -prompt 'Input Computer Name here'
while($ie.Busy -eq $true) { start-sleep -Milliseconds 100 }
#enters information into appropriate fields and clicks the add button
($ie.document.getElementsByName("mc_id") |select -first 1).value = $newNAME;
($ie.document.getElementsByName("mac_id") |select -first 1).value = $newMAC;
($ie.document.getElementsByName("btnAddNew") |select -first 1).click();
编辑:
目前我决定采用粗略的解决方案,即每次新条目都关闭我的com对象。然而,我现在遇到了导入csv以供脚本读取的问题。
Invoke-WebRequest
将数据POST到后端,避免使用IE并完全不运行JavaScript吗? - TessellatingHeckler