Buttons auf Websites

  • Hallo,
    ich möchte, dass mein Script beim Ausführen auf einen Button auf einer Website "klickt".
    Bis jetzt habe ich versucht es über die Tab Taste zu machen, was jedoch nicht immer funktioniert,
    da sich der Button manchmal an einer anderen Position auf der Website befindet.

    Gibt es einen Befehl, der mein Script den "Weiter" Button erkennen lässt und danach drauf klicken lässt?
    Ein Beispiel Code wäre nett :P

    mfg ghost

  • Moin ghost!,

    wenn du den Internet Explorer mit '_IECreate()' oder '_IECreateEmbedded()' erstellt hast und der Button auf einer Form ist, dann kannst du '_IEFormSubmit()' benutzen.
    Hier mal ein Beispiel :

    [autoit]

    $oForms = _IEFormGetCollection( $oIE )
    For $oForm In $oForms
    If $oForm.method == "post" Then
    _IEFormSubmit( $oForm )
    EndIf
    Next

    [/autoit]
  • Für mein Beispiel ist wie gesagt die Vorraussetzung das du das Fenster/Control selbst mit einer der '_IECreate'-Funktionen erstellst.
    Es gibt auch eine UDF für Firefox mit der es ähnlich geht.
    Bei einem 'normal' gestarteten Browser wird das schwierig.

    Edit : Es gibt auch noch die Möglichkeit (wenn es ein Link ist) die Methode '_IELinkClickByText()' zu benutzen.

    Edit2 : Und noch eine Möglichkeit :D

    [autoit]

    $oInputs = _IETagNameGetCollection($oIE, "input")
    For $oInput in $oInputs
    If String($oInput.value) = "Weiter" Then
    $oInput.click
    ExitLoop
    EndIf
    Next

    [/autoit]

    Einmal editiert, zuletzt von JanSchmidt (28. Februar 2008 um 15:14)

  • Ok, ich bekomme es nicht hin :(
    um mal ein bisschen konkreter zu werden:
    Es geht um die Seite https://autoit.de/www.ogame.de

    Vielleicht liegt das Problem darin, dass man nach jedem Login eine andere ID bekommt und die Links , nachdem man sich eingeloggt hat jedes mal anders sind.
    Oder die Buttons werden nicht gefunden, ich weiss es nicht.
    Falls mir mal jemand direkt helfen möchte...
    meine ICQ Nr. ist 245577265

    mfg

  • dann mach es erstma simpel mit koordinaten und mausclicks :) kannst es ja dann immer weiter verbessern

    bzw. lass einfach den ie explorer minimiert starten und dann machst du das ganze mit controlsend. Mit tab kannst du ja zwischen der Combo und den Inputs rumswitchen. Dann läufts auch auf mehreren pcs und das Risiko, dass er vorbeiklickt wie bei Mouseclicks ist auch weg.

  • Habe es auch zu beginn mit Mausklicks gemacht, dann geändert auf "Tab" drücken (sooft bis man auf dem Button ist).

    Aber ich bin mit beiden Methoden nicht 100% zufrieden, da sie nur begrenzt funktionieren.

    Wie schon oben beschrieben sind die Buttons manchmal an anderen Positionen (halt Browsergame).
    Desswegen klappt das mit Mausklicks und TAB nicht immer.

    mfg