geht _FFLinkClick überhaupt?

  • Ich verbringe nun mindestens 10 Stunden mit diesem Befehl und er klappt nicht.
    Leider bekam ich in meinem anderen Thread auch keine entscheidende Antwort. :(

    Deshalb meine hoch offizielle Frage funktioniert _FFLinkClick überhaupt?

    Im Forum fand ich diese Antworten:
    Erklärung... - bei mir funktioniert aber keine Variante.
    _FFCmd - geht auch nicht.

    Hier jetzt nochmal mein Code:

    Code
    <FF.au3>
    _FFStart("http://www.meinedomain.de/", Default, 2)
    Sleep(3000)
    If _FFIsConnected() Then
    _FFLinkClick(3, "index")
    _FFLoadWait()
    Sleep(3000)
    EndIf


    Hier die Fehlermeldung dazu:

    Spoiler anzeigen


    Irgendwo muss der Fehler liegen, wenn es scheinbar bei Anderen geht. Da ich aber nun mehr als 10 Stunden damit verbrachte habe, ist an dieser Stelle Schluss mit probieren und forschen.

    LG Poster63

  • Ohne den html-Code kann man dir nicht helfen. Darum hat dir im anderen Thread auch nach deinen ganzen Doppelposts niemand geantwortet.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • Ohne den html-Code kann man dir nicht helfen. Darum hat dir im anderen Thread auch nach deinen ganzen Doppelposts niemand geantwortet.

    Ist ja echt nett, und warum hat mir das dort keiner geschrieben?
    Ich wüsste eigentlich nicht, was der eigentliche html-code einer externen-Webseite damit zu tun hat. Zumal ich das mit dem _FFLinkClick auf mehreren verschieden Seiten ausprobiert habe und es auf Keiner ging.

    Als Webdesigner weiß ich schon, wie ein Link aussieht, den ich ansprechen muss und wo der liegt bzw. an welcher Stelle er kommt usw.

    Gut nehmen wir ein Beispiel:

    Code
    #Include <FF.au3>
    _FFStart("http://www.urticahof.de/", Default, 2)
    Sleep(3000)
    If  _FFIsConnected() Then
    	_FFLinkClick(2, "index")
    	_FFLoadWait()
    	Sleep(3000)
    EndIf

    Eigentlich müsste laut Code die Seite mit Handspinnen geöffnet werden.
    http://www.urticahof.de/handspinnen.htm
    Ist ja der dritte Link (href) auf der Seite von Oben.
    Macht das Script aber nicht, es bleibt auf der Startseite stehen.

    Hier meine Fehlermeldung:

    Spoiler anzeigen

    Vielleicht kannst Du damit etwas anfangen? Wäre schön.

    LG Poster63

  • ich würde das so machen

    [autoit]

    #Include <FF.au3>
    _FFStart("http://www.urticahof.de/", Default, 2)
    Sleep(3000)
    If _FFIsConnected() Then
    $sObj = _FFXpath("//div[@id='left']/p[2]/a[3]","",9)
    _FFClick($sObj)
    _FFLoadWait()
    Sleep(3000)
    EndIf

    [/autoit][autoit]

    _FFLinkClick("Handspinnen", "text")

    [/autoit]

    geht auch

    Einmal editiert, zuletzt von weedhead (15. Dezember 2010 um 18:08)

  • So habe das mal durchgesteste. Seit Version 3.6.11 wurde scheinbar etwas größeres durch ein Firefoxupdate verändert. Musst warten bis Stilgar die FF.au3 aktuallisiert.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • Zitat

    So habe das mal durchgesteste. Seit Version 3.6.11 wurde scheinbar etwas
    größeres durch ein Firefoxupdate verändert. Musst warten bis Stilgar
    die FF.au3 aktuallisiert.

    Danke! Das ist sicher eine Erklärung warum evtl. _FFIsConnected nicht geht. Hab aber noch eine andere evtl. gefunden. siehe weiter unten:

    Das hier geht jetzt:

    Code
    #Include <FF.au3>
    _FFStart("http://www.urticahof.de/", Default, 2)
    Sleep(3000)
    If _FFCmd("FFau3.WCD=window.content.top.document;") Then
    _FFLinkClick(2, "index")
    _FFLoadWait()
    Sleep(3000)
    EndIf


    Seltsam nun geht es auf einmal mit _FFCmd("FFau3.WCD=window.content.top.document;")

    Ich glaube jetzt auch den Grund zu wissen, warum es bisher nicht ging, bin mir aber nicht ganz sicher.
    Auf meinen Seiten auf denen ich es probiert habe, läuft ein Sicherheitsscript im Hintergrund. Das evtl. irgend etwas von autoit erkennt und deshalb bloggt. Auf anderen Seiten auf denen scheinbar kein Sicherheits-Script läuft, funktioniert es ja.

    Werde deshalb nochmal nachfragen. Macht sich das Script im Browser mit irgend einer Kennung (z.B. UA oder so) bemerkbar, so dass es evtl. von einem Sperrmerkmal betroffen wurde?

    LG Poster63

  • Du kannst autoit nicht per Javascript erkennen.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • Also bei mir klappt es jetzt komischerweise, die vorhergehenden Versuche schlugen auch fehl:

    [autoit]

    #Include <FF.au3>
    #Include <Array.au3>
    _FFStart("http://www.urticahof.de/")
    Sleep(3000)
    If _FFIsConnected() Then
    ;$aLinks = _FFLinksGetAll()
    ;_ArrayDisplay($aLinks)
    _FFLinkClick(2,"index")
    Sleep(3000)
    EndIf

    [/autoit]

    aber seit ich das Skript 1 mal mit _FFLinksGetAll gestartet hatte klappt es,

    mfg autoBert

  • Kann ich nicht bestätigen. Welche FF-Version und welche Mozrpl-Version hast du?

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • chip: hier die dazugehörige Konsolenausgabe:

    Spoiler anzeigen

    mfg autoBert

  • Ok, du hast nicht die aktuelle Version der FF.au3, daher kann ich das nicht nachvollziehen. Währe vielleicht gut wenn die nochmal hier hochladen könntest deine FF.au3-Version.

    Andy hat mir ein Schnitzel gebacken aber da war ein Raupi drauf und bevor Oscar das Bugfixen konnte kam Alina und gab mir ein AspirinJunkie.

  • Ok, du hast nicht die aktuelle Version der FF.au3, daher kann ich das nicht nachvollziehen. Währe vielleicht gut wenn die nochmal hier hochladen könntest deine FF.au3-Version.


    Ist im Annhang,

    Edit: Wenn ich den TimeOut hochsetze:

    [autoit]

    _FFAu3Option("LoadWaitTimeOut", 8888)

    [/autoit]

    , klappt es auch ohne

    [autoit]

    $aLinks = _FFLinksGetAll()

    [/autoit]


    ich habe auch extra vorher meinen Cache geleert,

    mfg autoBert