Automator: Ergebnis ungleich Null (255)

Diskutiere mit über: Automator: Ergebnis ungleich Null (255) im Scripting und Automatisierung Forum

  1. Maconym

    Maconym Thread Starter MacUser Mitglied

    Beiträge:
    417
    Zustimmungen:
    4
    Registriert seit:
    08.10.2003
    AppleScript Error
    Der Befehl wurde mit einem Ergebins ungleich Null beendet. (255)

    AppleScript Error
    Der Befehl wurde mit einem Ergebnis ungleich Null beendet. (255)





    Automator soll aus Safari URLs abfragen. Bei einer URL-Anzahl > 300 erscheint die genannte Fehlermeldung und die Ausführung bricht ab.

    Vermutlich übersteigt die Anzahl der gefundenen URLs Automators Kapazitäten.

    Was kann getan werden?

    Ich fand keine Möglichkeit, dass nur ausgewählte URLs zu den Ergebnissen aufgenommen werden, denn die Ergebnis-Filterung wäre erst als nächster Arbeitsschritt möglich.

    (Fehlermeldung anbei)
     

    Anhänge:

    • Error.png
      Error.png
      Dateigröße:
      19,4 KB
      Aufrufe:
      33
  2. Maconym

    Maconym Thread Starter MacUser Mitglied

    Beiträge:
    417
    Zustimmungen:
    4
    Registriert seit:
    08.10.2003
    Eine mögliche Lösung des Problems wäre, wenn man folgendes in Automator umsetzen könnte:

    -----

    – Gehe zu Safari und suche die erste URL

    – Gebe die URL an Automator zur Bearbeitung der weiteren Aktionen

    – Dann gehe zu Safari und suche die nächste URL

    – Wenn jede URL in Safari gefunden und übergeben wurde, dann Ende

    -----

    Ist eine solche Umsetzung möglich?
     
  3. Maconym

    Maconym Thread Starter MacUser Mitglied

    Beiträge:
    417
    Zustimmungen:
    4
    Registriert seit:
    08.10.2003
    Oder kann man den für Automator verfügbaren Speicher erweitern...?
     
  4. chebfarid

    chebfarid MacUser Mitglied

    Beiträge:
    894
    Zustimmungen:
    75
    Registriert seit:
    05.10.2005
    Unwahrscheinlich... aber um Dein Problem zu verstehen muesstest Du es schon genauer beschreiben:
    Woher kommen di URLs di abgefragt werden sollen? Aus der aktuell in Safari geladenen Webseite? Was soll dann mit den URLs passieren? ... ?
    Ich persoenlich halte wenig bis gar nix von Automator - sicher laesst sich das einfacher mit AppleScript loesen.

    Frohes schaffen
    Farid
     
  5. Maconym

    Maconym Thread Starter MacUser Mitglied

    Beiträge:
    417
    Zustimmungen:
    4
    Registriert seit:
    08.10.2003
    Es geht um die aktuelle Safari-Seite. Nachdem eine Seite mit jeder Menge URLs, die auf Bilder (.jpgs) verweisen, geladen wurde, sollen die Bilder auch auf den Rechner geladen werden. Die Bilder selbst werden auf der Seite nicht (in der verlinkten Größe) dargestellt.

    Um jetzt z.B. 500 Bilder nicht manuell laden zu müssen, wollte ich dies von Automator erledigen lassen. Das funktioniert auch fehlerlos, solange auf einer Seite nicht zuviele Bilder-URLs vorhanden sind.

    Eine Lösung wäre, wenn Automator z.B. nach 100 gefundenen URLs mit dem Download beginnen würde, bevor weitere URLs gelesen werden. Nur wie soll so etwas in Automator erstellt werden?

    Oder hat jemand genügend Infos über AppleScript, die sowas ermöglichen können...?
     
  6. chebfarid

    chebfarid MacUser Mitglied

    Beiträge:
    894
    Zustimmungen:
    75
    Registriert seit:
    05.10.2005
    Ich würde das mit einer Kombination AppleScript/Curl versuchen, z.B.:
    PHP:
    with timeout of 600 seconds
        set otid to text item delimiters
        set text item delimiters to 
    "/"
        
        
    tell application "Safari"
            
    set imageCount to (do JavaScript "document.images.length" in document 1)
            
            
    repeat with i from 0 to imageCount
                
    try
                    
    set imageURL to (do JavaScript "document.images[" "].src" in document 1)
                    
    set imageName to last text item of imageURL
                    set savePath to 
    ("~/Pictures/" imageName)
                    
    set curlCommand to ("curl " imageURL " -o " savePath)
                    do 
    shell script curlCommand
                end 
    try
            
    end repeat
            
        end tell
        
        set text item delimiters to otid
    end timeout
    Wenn Du uns den URL der Seite wissen läßt, kann man Dein Problem genauer untersuchen (Mir scheint verstanden zu haben, daß Du nicht direkt mit Bildern auf der aktuellen Seite arbeiten willst, sondern mit Links die auf die runterzuladenden Bilder verweisen...)

    Frohes Scripten
    Farid
     
  7. Maconym

    Maconym Thread Starter MacUser Mitglied

    Beiträge:
    417
    Zustimmungen:
    4
    Registriert seit:
    08.10.2003
    *peinlich* Hab wegen damaligen Urlaubs diese Diskussion vergessen und mich nach Weihnachten nicht mehr daran erinnert. Wegen einer anderen Sache bemühe ich mich derzeit wieder mit Automator-Versuchen und erinnerte mich...

    Farid, noch da?

    Zum Thema: Nach jedem Neustart soll das Desktop-Bild geändert werden. Damit es viele unterschiedliche Bilder gibt, sollen alle Hintergründe von macdesktops.com genutzt werden, aber nur in der notwendigen Größe (bei mir 1280x1024).

    Auf macdesktops.com sind im unteren Bereich die Categories zu sehen.

    Ich öffne eine Kategorie nach der anderen. Nach jeder Öffnung starte ich Automator mit dem angehängten Ablauf.

    Aus den Kategorien, die wenig Bilder enthalten, werden alle gewünschten Bilder geladen. Das heißt, mein erstellter Ablauf funktioniert grundsätzlich. Doch sobald es zu viele Bilder sind, erscheint eine Fehlermeldung.

    Kann jemand helfen?
     

    Anhänge:

  8. chebfarid

    chebfarid MacUser Mitglied

    Beiträge:
    894
    Zustimmungen:
    75
    Registriert seit:
    05.10.2005
    Ich hab' mir Dein Vorhaben und die Macdesktops mal angeschaut: es ist natürlich Irrsinn, sämtliche z.Zt. 5774 Wallpapers runterzuladen - allein das Auslesen aller Links hat mein G5 in 12 Minuten nicht fertiggekriegt.
    Ich denke, es ist schlauer, via AppleScript nachzuschauen wieviele Bilder es insgesamt gibt, dann per Zufallsgenerator jeweils eins auszuwählen und das in der gewünschten Auflösung zu laden und sofort als Desktoppicture zu benutzen.
    Wenn Du das folgende Script als Anwendung speicherst und zu Deinen Login-Elementen hinzufügst, läuft das ganze automatisch bei jedem einloggen ab:

    PHP:
    with timeout of 300 seconds
        tell application 
    "Safari"
            
    set URL of document 1 to "http://macdesktops.com"
            
    delay 3 -- Sekundenum die Seite zu laden
            
            set x to 
    (do JavaScript "document.links.length" in document 1) as integer
            repeat with i from 0 to x
                
    try
                    
    set jsLink to ("document.links[" "].href") as string
                    set aLink to 
    do JavaScript jsLink in document 1
                    
    if aLink contains "category=0" then
                        set theText to 
    (do JavaScript ("document.links[" "].text"in document 1)
                        
    set allImages to my getNumber(theText)
                        exit 
    repeat
                    end 
    if
                
    end try
            
    end repeat
            
            set y to 
    (random number from 1 to allImages) as integer
            set imagePage to 
    ("http://macdesktops.com/index.phtml?Picture=" "&res=TRUE")
            
    set URL of document 1 to imagePage
            delay 3 
    -- Sekundenum die Seite zu laden
            
            set z to 
    (do JavaScript "document.links.length" in document 1) as integer
            repeat with i from 0 to z
                
    try
                    
    set jsLink to ("document.links[" "].href") as string
                    set aLink to 
    (do JavaScript jsLink in document 1)
                    if 
    aLink contains "1280x1024.jpg" then
                        set curlCommand to 
    ("curl " aLink " -o " "~/Desktop/" ".jpg")
                        do 
    shell script curlCommand
                        
    exit repeat
                    end 
    if
                
    end try
            
    end repeat
        end tell
        
        set imageFile to 
    ((path to desktop) as string) & (".jpg") as alias
        tell application 
    "Finder"
            
    set desktop picture to imageFile
        end tell
        
    end timeout

    on getNumber
    (theText)
        
    set text item delimiters to "("
        
    set t to text items of theText
        set text item delimiters to 
    ""
        
    set n to (item 2 of t) as string
        set n to 
    (characters 1 thru -2of n as string
        
    return n
    end getNumber
    Wenn das Script für Deine Zwecke brauchbar ist, schicke ich gerne noch ein paar Erklärungen nach.

    Viel Spaß
    Farid

    PS: Ich rauche gern ;)
     
  9. Maconym

    Maconym Thread Starter MacUser Mitglied

    Beiträge:
    417
    Zustimmungen:
    4
    Registriert seit:
    08.10.2003
    Das mit dem Irrsinn ...

    ... ist richtig. Doch das bezieht sich nur auf die Kategorie All, denn da braucht mein G5 auch superextralang um sie zu öffnen. Doch die Kategorie All hätte bei meinem ersten Vorschlag auch ausgelassen werden können.

    Doch so ein Script wäre grundsätzlich auch die Lösung. Ich habe das Script auf 3 Macs getestet, auch automatisch nach Login; doch überall endet es mit der Fehlermeldung:

    "Apple Script Fehler
    Die Datei „[Macname]:Users:[Username]: Desktop:[Zufallsnummer].jpg“ wurde nicht gefunden."

    Hab ich übersehen, dass auf jedem Mac etwas verändert werden muss?

    Kann man per Script auch feststellen, ob weitere Monitore angeschlossen sind? Ich sitz hier an einem mit 2 Monitoren. Es sollte dann nicht unbedingt auf beiden Monitoren der gleiche Hintergrund zu sehen sein (außer es ist zufallsbedingt, was extrem selten sein dürfte).

    Wie auch immer, ich bin an den erwähnten Erklärungen interessiert, vielleicht bringen sie den Durchblick an dem Script, damit ich selbst auch nach der Fehlerquelle suchen kann...
     
  10. Maconym

    Maconym Thread Starter MacUser Mitglied

    Beiträge:
    417
    Zustimmungen:
    4
    Registriert seit:
    08.10.2003
    Es stellte sich auch noch die Frage...

    ...ob wir evtl. unterschiedliche Einstellungen in Systemeinstellungen/Schreibtisch & Bildschirmschoner haben bzw. müssen bei den Schreibtisch-Hintergrund-Einstellungen irgendwelche Optionen aktiv oder nicht aktiv sein?
     
Die Seite wird geladen...
Ähnliche Themen - Automator Ergebnis ungleich Forum Datum
Automator (Text aus externem Programm löschen, kopieren, ...) Scripting und Automatisierung 25.11.2016
"Monitore erkennen" per Automator Scripting und Automatisierung 13.11.2016
Automator-Workflow im Hintergrund ausführen Scripting und Automatisierung 21.10.2016
PDF Dateien verschieben mit Automator Scripting und Automatisierung 20.10.2016
PDF durchsuchen und je nach Ergebnis Dokument verschieben Scripting und Automatisierung 24.08.2016

Diese Seite empfehlen

Benutzerdefinierte Suche