Hallo Leute,
hätte mal gerne gefragt, wie es möglich ist auf bestimmte Felder im Internet, wie z.B. ein Anmeldeformular (Benutzername und Passwort) zu fokusieren?
Danke im vorraus.
MfG
MehmeX
Hallo Leute,
hätte mal gerne gefragt, wie es möglich ist auf bestimmte Felder im Internet, wie z.B. ein Anmeldeformular (Benutzername und Passwort) zu fokusieren?
Danke im vorraus.
MfG
MehmeX
Kann mir da keiner helfen?
Haben die Eingabefelder keine IDs, womit man es fokusieren kann?
Hallo,
doch Inputs können sogar über Namen, IDs, Class und Index angesprochen werden, nur eben nicht mit den "normalen" AutoIt Befehlen, dafür brauchst du die IE.au3 oder FF.au3
Und fokusieren usw. wird damit auch überflüssig da z.B. Werte direkt gesetzt werden können.
[EDIT]
z.B. web-Suche mit FireFox:
#include <FF.au3>
[/autoit][autoit][/autoit][autoit]If _FFStart("www.clusty.com") Then
$sSuchbegriff = "autoit"
_FFSetValueByName("query", $sSuchbegriff)
_FFFormSubmit()
EndIf
Grüße
Stilgar
Danke für die Antwort, werde es mal ausprobieren.
Edit: Wie kommst du aber auf "query"? Muss man das im Quelltext suchen?
Gibt es da auch eine Alternative. Denn das "IE" ist ja einmal für Internet Explorer und das "FF" ist ja nur für FireFox.
Hätte gerne eine Methode wo es bei beiden klappt. Danke.
Du kannst im Quellcode der Seite, die Namen der Inputs oder Buttons etc. herausbekommen.
Diese musst du dann mit AutoIt bearbeiten:
$Input1 = _IEGetObjById ($oIE, "query")
$Input2 = _IEGetObjByName ($oIE, "query")
_IEFormElementSetValue ($Input1, "Bla Bla Bla")
_IEFormElementSetValue ($Input2, "Bla 2 Bla 2 Bla2")
Kannst du mir da einen Tipp geben, wie ich das im Quelltext am besten und am schnellsten finden kann? Weil die Quelltexte sind nicht gerade kurz.
#include <IE.au3>
[/autoit] [autoit][/autoit] [autoit]$oIE = _IECreate ("http://www.hoasse80a.at/page22.php")
[/autoit] [autoit][/autoit] [autoit]$oForms = _IEFormGetCollection ($oIE)
If @error Then
MsgBox(0, '', 'Keine Formen enthalten')
Else
$Index = 0
For $oForm In $oForms
ConsoleWrite('Form-Index: ' & $Index & ' / Name: ' & $oForm.Name & @CRLF)
$oFormElements = _IEFormElementGetCollection($oForm)
If IsObj($oFormElements) Then
$IndexElement = 0
For $oElement In $oFormElements
ConsoleWrite('Form: ' & $Index & ' /Element: ' & $IndexElement & ' /Name: ' & $oElement.Name & @CRLF)
$IndexElement += 1
Next
EndIf
$Index += 1
Next
EndIf
Danke, daber da passiert nichts, ausser das die Webseite geöffnet wird.
In FF findest du die passenden Informationen am einfachsten mit dem AddOn FireBug.
Oder auch mit dem FF-Page-Analyzer (siehe Sig)
Es gibt keine Lösung die für beide Browser gleichermaßen geht, du mußt jeweils für beide ein anderes Programm bzw. anderen Programmteil schreiben.
Alle anderen "Lösungen" führen manchmal eher zu zufallsgenerierten Ergebnissen.
Zitat von MehmeXDanke, daber da passiert nichts, ausser das die Webseite geöffnet wird.
Es werden die gefundenen Informationen in die Konsole von Scite geschrieben
Sorry ist vielleicht eine dumme Frage, aber, wie kann ich die Daten von der Console lesen?
In Scite-Fenster im unteren Teil befindet sich das Output-Feld oder auch Konsole genannt. Das Feld ist mit F8 ein- und ausschaltbar. Dort werden die Fehlermeldungen des Skriptes angezeigt, aber auch die Texte, die mit ConsoleWrite geschrieben wurden.
Ach jetztda! Danke! Wie findest du das aber am besten/schnellsten im Quelltext?