Zu lahm???

Diskutiere mit über: Zu lahm??? im Scripting und Automatisierung Forum

  1. ickonrad

    ickonrad Thread Starter MacUser Mitglied

    Beiträge:
    4
    Zustimmungen:
    0
    Registriert seit:
    06.02.2006
    Hi,
    ich sitze immer noch an meinem kleinen Tool, mit dem ich mein Gästebuch leer räumen möchte. (Ich will alle Seiten eine nach der anderen öffnen, den gesamten Inhalt kopieren und in einer Textdatei ablegen)
    Dank der tollen Hilfe hier habe ich mit keystroke das Problem theoretisch gelöst. Allerdings spielt die Praxis nicht mit.

    Mein Script ruft die url auf und bei einigen Seiten funktioniert auch die Befehlsfolge
    keystroke "a" using command down
    keystroke "c" using command down
    keystroke "w" using command down
    aktivierung von Text-Edit Plust
    keystroke "v" using command down

    Nur, bei einigen Seiten kopiert er, statt des Seiteninhalts, einfach die Bezeichnung der url und pastet diese in die Textdatei.
    Kann es sein, dass safari nicht schnell genug mit dem Bildaufbau ist und darum manchmal das Kopieren nicht hinhaut?

    Ich habe das Script mal eingestellt. Da es mein erstes Script ist, wird sich manchen sicher der Magen umdrehen. Ich kanns leider nicht ändern. Mich irritiert einfach, dass die Textdatei, die schließlich abgespeichert wird zur Hälfte richtig ist. Aber leider eben nur zur Hälfte. und ich kann keine Gesetzmäßigkeit erkennen, warum es manchmal funktioniert und manchmal nicht. Darum könnte ich mir vorstellen, dass es ein Zeitproblem ist.



    tell application "Tex-Edit Plus"

    make new window
    select insertion point before contents of window 1
    set Seitenzaehler to 15
    repeat

    set the target_URL to "http://www.xxxxx&anf=" & Seitenzaehler
    open location target_URL
    tell application "System Events"
    keystroke "a" using command down -- alles markieren
    keystroke "c" using command down -- alles markieren
    keystroke "w" using command down -- alles markieren
    tell application "Tex-Edit Plus" to activate
    keystroke "v" using command down -- alles markieren
    end tell

    set Seitenzaehler to Seitenzaehler - 5
    if Seitenzaehler is equal to 0 then exit repeat
    end repeat
    tell application "Tex-Edit Plus" to activate
    save window 1 in file "test"
    close window 1 saving ask
    quit saving ask
    end tell
     
  2. xell2202

    xell2202 MacUser Mitglied

    Beiträge:
    960
    Zustimmungen:
    14
    Registriert seit:
    30.12.2005
    Jetzt gaaanz blöd gefragt, aber das klingt wirklich nach der Methode Holzhammer...
    Ist das Gästebuch nicht normalerweise in einer SQL-Datenbank abgelegt? Die kannst du ganz sicher nicht irgendwie exportieren?
    Ansonsten könntest du eventuell mit wget oder curl mehr Glück haben, aber deine Methode ist irgendwie nicht wirklich... ich weiß nicht, automatisch, das ist mehr als ob du einen Roboter vor die Tastatur setzen würdest, nicht falsch auffassen jetzt :)
    Vielleicht hat ja hier sonst jemand eine Idee wie man das eleganter lösen kann, bin in Applescript auch nicht wirklich gut...

    lg xell
     
  3. ickonrad

    ickonrad Thread Starter MacUser Mitglied

    Beiträge:
    4
    Zustimmungen:
    0
    Registriert seit:
    06.02.2006
    Hallo xell42,
    ich bin mir durchaus bewusst, dass ich die Neandertalerin der Scriptanwender bin. Mit manchen Dingen muss man halt leben. Ich fasse das überhaupt nicht falsch auf. Ich habe es nur mit curl versucht, aber dazu bin ich nicht bewandert genug. Ich dachte halt, Seite komplett markieren, kopieren und pasten ist mir so vertraut, also warum soll ich es nicht einfach auf altbackene Art versuchen. Wenn es funktionieren würde, könnte ich auch gut als Neandertaler leben, aber irgendwo hängt es ja wohl offensichtlich.
     
  4. Markus87

    Markus87 MacUser Mitglied

    Beiträge:
    1.966
    Zustimmungen:
    57
    Registriert seit:
    23.07.2004
    Versuchs mal mit PHP.
     
  5. Andi

    Andi MacUser Mitglied

    Beiträge:
    7.826
    Zustimmungen:
    653
    Registriert seit:
    16.05.2002
    ...

    Hallo ickonrad,

    du kannst nach open location

    delay 2

    setzen. Gegebenenfalls die Zahl erhöhen.
    Dann wartet das Skript.

    Gruß Andi
     
  6. pks85

    pks85 MacUser Mitglied

    Beiträge:
    1.157
    Zustimmungen:
    5
    Registriert seit:
    16.07.2004
    Code:
    #!/bin/sh
    MYURL="http://www.xxx.xx/?anf="
    MYPAGE=15
    
    while test $MYPAGE -ge 1    
    do 
        curl $MYURL > $MYPAGE.html 
        MYPAGE=`expr $MYPAGE - 1`
    done
    
    habs nich probiert sollte aber gehen...
     
  7. xell2202

    xell2202 MacUser Mitglied

    Beiträge:
    960
    Zustimmungen:
    14
    Registriert seit:
    30.12.2005
    Kenn mich wie gesagt auch nicht sehr gut damit aus, aber bleibt MYURL nicht immer gleich, sollte sich doch bei jedem Aufruf um 1 verändern nach dem Fragezeichen, oder?

    lg xell
     
  8. pks85

    pks85 MacUser Mitglied

    Beiträge:
    1.157
    Zustimmungen:
    5
    Registriert seit:
    16.07.2004
    oh ja mist:
    Code:
    #!/bin/sh
    MYURL="http://www.xxx.xx/?anf="
    MYPAGE=15
    
    while test $MYPAGE -ge 1    
    do 
        curl $MYURL$MYPAGE > $MYPAGE.html 
        MYPAGE=`expr $MYPAGE - 1`
    done
     

Diese Seite empfehlen

Benutzerdefinierte Suche