Neu bei Powershell. Ich habe mir einige der anderen Beispiele im Stack-Overflow angeschaut, aber keine Lösung gefunden.PowerShell Website-Automatisierung mit getElements
Mein Problem: Ich versuche, ein Formular auszufüllen und kann nicht in ein Eingabefeld für EMAIL einfügen. Ich habe versucht getElementByName
und getElementsByTagName
und es kann es nicht finden. Ich habe versucht, es durch id="main-content"
suchen, aber ich muss es auch falsch gemacht haben.
Putting einen Wert in $pw
Arbeit, weil sie eine ID hat, aber ich kann es nicht ohne ID mit den anderen zu arbeiten.
Ich werde irgendwie die E-Mail einen String machen. Ich denke.
Powershell:
While ($ie.busy -eq $true){
[System.Threading.Thread]::Sleep(2000)
}
$doc = $ie.document
$pw = $doc.getElementByID("passwd")
$pw.value = "$userPW"
$em = $doc.getElementsByTagName("p") |
where-object {$_.Name -eq "email"} |
ForEach-object { $_.value("[email protected]")}
#$email = $unID + $([char]64) + "DOMAINNAME" + $([char]46) + "com"
#$em.value = ($email -as [string])
HTML-Code:
<div id="main-content" class="main-content">
<div class="content-box content-box-outer">
<div class="content-box-content">
<fieldset class="column-left">
<p>
<label>Password</label>
<input name="passwd" id="passwd" type="password" text="Password" value="" autocomplete="off" class="">
</p>
<p>
<label>Email</label>
<input name="email" type="text" text="Email" value="" class="">
</p>
</fieldset>
<fieldset class="column-right">
<p>
<label>Fax Number</label>
<input name="fax" type="text" text="Fax Number" maxlength="64" value="" class="">
</p>
</fieldset>
</div>
Der Tag-Name eingegeben wird, nicht P. –
Danke Tony, ich dachte, es überhaupt „P“ s aussehen würde und es danach finden .. aber ich bin falsch .. nach dem bearbeiten mit INPUT tun ich dies „doesn bekommen Es gibt keine Methode namens 'value'. ForEach-object {$ _. Wert <<<< ("testtesttest")}“ –
Versuch' $ _. Value = "[email protected]" '' value' ist eine Eigenschaft, keine Methode, und Sie versuchen, um es wie eine Methode zu verwenden. –