IE Programm

  • Hallo liebe AutoIt User,

    ich habe mich schon soweit mit dem AutoIt Programm auseinandergesetzt, sodass ich einfache kleine Scripte schreiben kann.

    Nun möchte ich kleines Programm schreiben, welches hauptsächlich auf Links im Browser klickt.
    Ich habe schon du schnuppern hier im Forum gesehen das man den IE Explorer
    dazu nutzen/ansteuern kann. Nur leider habe ich keine große Ahnung wie. Die "offizielle" AutoIt Hilfe auf Deutsch von autoit.com, kann mir leider nicht viel weiterhelfen, da die IE Befehle, warum auch immer, nicht aufgeführt sind (oder ich zu blöd bin sie zu finden?^^).
    Mein Programm sollte hauptsächlich folgendes können:

    - Im IE eine Seite aufrufen und da auf einen Link klicken welcher Anfängt mit https://autoit.de/www.beispiel....

    - Wenn möglich das das ganze im Hintergrund abläuft, also das man nichts sieht (invisible Befehl ist das das?)

    So das wars erstmal. Ich bin für jede Hilfe sehr dankbar,

    Gruß giraffe

    • Offizieller Beitrag

    Hi!

    In der aktuellen Hilfe auf Englisch sind diese Befehle aufgeführt. In der Version für die die deutsche Hilfe übersetzt wurde (3.1.1) waren diese IE-Befehle noch nicht dabei, daher sind sie dort weder enthalten noch übersetzt.

    Wenn und in der englischen Hilfe unter "Index" mal "IE" eingibst, siehst du was du an Befehlen brauchst. Deine Anforderungen sollten nicht zu schwer sein, die Beispiele sind immer hilfreich. _IECreate (siehe Parameter für Hintergrund) und _IEClickLinkByText (o.ä.).

    peethebee

  • [autoit]


    #include <ie.au3> ;udf einbinden
    $gui = GUICreate("name", 1000, 750, -1, -1) ;gui erstellen
    $oIE = _IEcreateEmbedded ()
    GUICtrlCreateObj($oIE,0,0,1000,750)
    ;GUISetState(@SW_SHOW)
    _IENavigate ($oIE, "http://www.link.de") ;zu "klickender" link

    [/autoit]
  • was mar bobley gepostet hat ist eher dafür geeignet den ie in einer "gui" zu benutzen aber ich glaube du meinst sowas...

    [autoit]

    #include <IE.au3>;udf einbinden
    $sUrl = "http://localhost/bla.html";des ist die url
    $oIE = _IECreate ($sUrl,0,1) ;0,1 visible...0,0 invisible
    Sleep(1000);1000 millisekunden warten....(hat nichts mit IE zu tun^^)
    _IENavigate($oIE,"google.de");hier würde er dann zu google.de gehen

    [/autoit]


    PS:wenn du was mit dem ie machen willst dann poste ab besten genau dein problem ggf eine website wo man des ausprobieren könne oder den quellcode...hier alles zu erklären was der ie kann ist nen kleines bisschen komplex^^

    bei weiteren frage:icq #249568985

    //edit:
    bovor du nen neues topic zum ie machst solltest du auf jeden fall die suchfunktion mal benuzen..in letzter zeit ahben viele user fragen zum IE gestellt ;)
    wenn du zu faul bist hast ja meine icq^^

  • Erstmal Danke an alle die geantwortet haben!

    Ich werde mich jetzt mit der engl. Hilfe auseinandersetzen und mit dem was ihr gepostet habt.

    snoozer ja ich habe mir die anderen Posts hier über den IE angeguckt, aber wenn man die IE Befehle nicht kennt nutzen die einem nicht sehr viel :-).
    Und ich werde es mir nicht nehmen lassen auf dein Angebot zurückzukommen ;-).

  • So hab jetzt ein Prob mit dem Befehl _IEclicklinkbytext kann ich ja nur auf einen definierten link clicken z.B. https://autoit.de/www.google.de

    Nun möchte ich aber auf einen Link clicken der nciht ganz so definiert ist:

    Ich habe ein Link wo am Anfang z.B. immer steht https://autoit.de/www.google.de, aber es kommt immmer noch was hinterher also so z.B.: https://autoit.de/www.google.de/s2v26sbbd7d3dn82dnsdkn

    Vielleicht gibt es ne Variable die ich einsetzen kann oder so..

    Ich bin für jede Lösung des Problems sehr dankbar!

  • Hi,

    du könntest es mit

    [autoit]


    _IELinkClickByIndex ( ByRef $o_object, $i_index [, $f_wait = 1] )

    [/autoit]


    versuchen.

    Wenn der Linktext sich von den anderen abgrenzen läßt, also z.B. ein bestimmtes Wort enthalten ist oder ein Muster zutrifft, könntest Du alle Links durchlaufen und prüfen ob der Linktext zutrifft.
    Also zum Beispiel so:

    [autoit]


    #include <IE.au3>
    $oIE = _IECreate("http://www.google.de")
    $oDocLinks = _IELinkGetCollection ( $oIE) ;liefert alle Links als Collection
    For $olink In $oDocLinks
    If StringInStr ( $olink.outerText , "Fro") Then
    $olink.click()
    EndIf
    Next

    [/autoit]

    Einmal editiert, zuletzt von jonk (26. Dezember 2006 um 13:11)