Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Software>Möchte im festen Intervall Webcambilder laden. Wer kennt eine passende Software hierfür?

Möchte im festen Intervall Webcambilder laden. Wer kennt eine passende Software hierfür?

ratz-fatz
ratz-fatz29.11.1714:57
Früher habe ich mal WebTimer X dafür genommen , den Entwickler gibt es jetzt nicht mehr und ich suche nach einer Alternative.
Aufgabenstellung: Im festen Zeitintervall soll von diversen Webcams das jeweils aktuelle Bild geladen werden. Da sich die Naturstudie über einige Monate hinziehen soll, wäre so ein Tool schon ganz nett.

AppleScript oder Automator? Habe null Plan von der Materie. Deshalb meine Bitte nach einer "fertigen" Software, bei der ich die Intervalle und möglichst auch die Dateinamen konfigurieren kann (wobei dies nicht zwingend notwendig ist). Herzlichen Dank für eure Tipps.
0

Kommentare

cube4you29.11.1717:04
Hallo!

Falls du eigenen Webspace hast, geht das auch mit einfachen PHP Skripten:

<?php
$contents = file_get_contents('http://webcam-image.jpg');
setlocale(LC_TIME, 'de_DE');
$savename = strftime("%Y-%m-%d_%H-%M-%S");
$savefile = fopen("$savename.jpg", "w");
fwrite($savefile, $contents);
fclose($savefile);
?>

Den Skriptinhalt mit angepasstem Pfad zum Webcam-Bild in eine index.php schmeissen und diese dann auf deinen Webserver in einen Ordner, der von "aussen" erreichbar ist.

Dann auf https://cron-job.org/de/ gehen, und dort den Intervall des Scriptaufrufs festlegen, Cronjob starten und später einfach regelmäßig die abgespeicherten JPG vom Webspace runterladen. Die Dateien sind hier nach Speicherdatum beanannt, kannst Du aber im Skript entsprechend anpassen (z.B. je nach Webcam).
0
ratz-fatz
ratz-fatz29.11.1717:34
Das ist ganz toll, die Idee mit dem eigenen Webspace. Davon habe ich noch viel weniger Ahnung. Ich sagte ja schon, dass ich ein abslouter Noob in Sachen AppleScript und Automator bin. Aber deine Lösung ist wirklich beeindruckend!

Nur leider für mich nicht hilfreich.
0
Igor Detlev29.11.1720:15
wenn es lokal laufen soll würde ich es mit einem shell script machen, das fürs laden und speichern cURL oder wget verwendet, und das ganze per launchd im gewünschten Intervall aufrufen lassen.
+1
ratz-fatz
ratz-fatz29.11.1720:46
Auch sehr geil!
0
stefan29.11.1722:09
Welche Kamera? Ich habe welche von Axis, die selbst regelmässig ein Bild verschicken können.
Ich lade es mir alle 5 Minuten (Zeit, Dateinamen, Ziel und mehr ist frei konfigurierbar) auf einen ftp Server.
0
ratz-fatz
ratz-fatz29.11.1722:14
Das sind Kameras, die mir nicht gehören und die ich nicht entsprechend konfigurieren kann. Webcams halt.
0
Schnitter
Schnitter29.11.1723:06
Die Lösung von Igor ist wirklich vergleichsweise simpel umzusetzen. wget gibt es zB. per Macports. Den URL liefert jeder Browser. Das Shellscript besteht aus 6 Zeilen ( ). Den launchdeamon bastelt man sich nach einer Vorlage im Internet ( ), legt ihn in /system/library/launchdeamons ab und schaltet ihn per launchctl scharf. Kriegst du hin.
„Jeder ist ein Planet und wird von einem Menschen bewohnt.“
0
ratz-fatz
ratz-fatz30.11.1706:22
Mein Frage zielt auf "Software" ab. Was Fertiges, das ich in den Programme-Ordner legen kann und das sich per Doppelklick starten lässt. Wo ich eine URL eintippe, das Intervall und den Ort, wo die Daten landen. Fertig. Dafür nehme ich auch gerne Geld in die Hand, wenn es funktioniert.

Immerhin ist es gut zu wissen, dass es auch anders gehen kann. Es ist aus meiner Sicht ganz erstaunlich, wie anspruchsvoll der Lösungsansatz einer recht einfachen Aufgabenstellung gestaltet werden kann.
0
Igor Detlev30.11.1708:14
ratz-fatz

es gibt auch GUIs für wget und cURL. Suche sie und schau, ob sie die URL in Intervallen crawlen können, und ob sie beim Speichern automatisch eindeutige Namen vergeben können, idealerweise mit einem Timestamp im Namen. Falls das der Fall ist hast du fast genau die Lösung, die ich beschrieben habe, nur halt mit dem Risiko, dass du permanent ein GUI Programm offen haben musst, das abstürzen (solche command line GUIs sind selten wirklich gut) oder aus Versehen beendet werden könnte.

Die Suchbegriffe für Google stehen alle im Thread.
+1
ratz-fatz
ratz-fatz30.11.1708:34
Danke dir! Das ist ein guter Ansatz. Ich habe mittlerweile auch mal was in Richtung "Download Manager" probiert und Folx angeworfen. Leider ist da die Timer-Funktion nicht präzise genug steuerbar und das Programm vom Schwerpunkt her vollkommen anders aufgestellt. Cyberduck wäre wohl auch noch eine Alternative, da ginge es dann aber wohl mehr in Richtung Scripterei.

Ja – die App würde rund um die Uhr laufen müssen und ich würde sie auf dem Server laufen lassen, wo sich auch andere Programme rund um die Uhr um irgendwas kümmern, bzw. mit Lingon als Cron-Jobs verwaltet werden. Ich kann nachvollziehen, warum diese Aufgaben quasi als "Beifang" auf Systemen installiert werden, die 24/7 on sind (aka Webserver). Nur traue ich mir das händische Einrichten von Cron-Jobs nicht zu und ein GUI wäre für mich aus diesem Grund unverzichtbar.

Ich bleibe da mal dran.
0
MLOS30.11.1709:07
Mit einem Raspberry Pi wärs auch möglich. Man benötigt einmal das PHP-Script, dass hier bereits steht und dieses musst du mittels eines Cronjobs immer wieder ausführen lassen. Man kann sogar direkt die Bilder korrekt berechnen lassen, eine Webvorschau erstellen lassen und vieles mehr.
0
DefiLover30.11.1712:10
Ist das nicht inzwischen schon im Standard HTML5 mit dem <download> Feature?
0
Megaseppl04.12.1715:25
ratz-fatz
Ja – die App würde rund um die Uhr laufen müssen und ich würde sie auf dem Server laufen lassen, wo sich auch andere Programme rund um die Uhr um irgendwas kümmern, bzw. mit Lingon als Cron-Jobs verwaltet werden. Ich kann nachvollziehen, warum diese Aufgaben quasi als "Beifang" auf Systemen installiert werden, die 24/7 on sind (aka Webserver). Nur traue ich mir das händische Einrichten von Cron-Jobs nicht zu und ein GUI wäre für mich aus diesem Grund unverzichtbar.

Ist das ein macOS-Server? Falls ja, kannst du auch eine Automator-Anwendung laufen lassen die bestimmte Dateien in regelmäßigen Intervallen herunterlädt.
Hast du eine Beispiel-URL für eine der Webcams?
0
ratz-fatz
ratz-fatz04.12.1715:57
Ja hier ist ein beispielhafter String zum Aufruf eines Bildes: http: / / 1.2.3.4/cgi-bin/image.jpg
Dann ist das Bild im Browserfenster sichtbar und sollte dann mit Datum im Namen und einer frei wählbaren Kennung (zwecks besserer nachträglicher Zuordnung der ursprünglichen Quelle) lokal gespeichert werden. Auch wenn dabei nur der Standardpfad des Browsers für den Speicherort genommen wird, sind die Bilder anhand des Names einwandfrei später zur jeweiligen Quelle zuordnungsfähig.
0
Fernsehdoktor05.12.1711:19
Ich habe vor einigen Jahren "Webcamget" verwendet. Es hat bei mir gut funktioniert und hat - glaube ich - genau die gesuchten Funktionen.
+2
ratz-fatz
ratz-fatz05.12.1712:09
Super! Das ist genau das, was ich gesucht habe! Leider sind die Entwickler spurlos von der Bildfläche verschwunden. Auf die Schnelle habe ich das unter 10.13 leider nicht ans Laufen gekriegt. Werde aber mal scherzeshalber die Versionen für XP und Konsorten runterladen und es damit mal versuchen. Vielen Dank!!!!
0
caMpi
caMpi05.12.1719:36
Ich hab mich mal an der Automatorlösung versucht. Und das funktioniert auch erstmal.
Leider ist es immer etwas schwierig, Automatorworkflows abzutippen, aber probiern wirs mal:
Neues Programm:
1. Wir brauchen 3 Variablen, je eine vom Typ Datum, Pfad und Text. Es muss nur die Variable Datum nach eigenem Belieben angepasst werden.
2. Erste Aktion: Angegebene URLs abfragen. Da kommen alle URLs rein, in denen die Bilddateien der Kameras liegen. Option: Eingabe dieser Aktion ignorieren.
3. Zweite Aktion: Wert der Variable festlegen. Variable: Text.
4. Dritte Aktion: Neuer Ordner, Name: Variable "Datum", Ort: wo immer du willst. Option: Eingabe dieser Aktion ignorieren.
5. Vierte Aktion: Wert der Variable festlegen. Variable: Pfad.
6. Fünfte Aktion: Wert der Variable abfragen. Variable: Text. Option: Eingabe dieser Aktion ignorieren.
5. Sechste Aktion: Bild-URLs von der Webseite abfragen: Alle Bilder auf diesen Webseiten.
8. Siebte Aktion: URLs laden. Ort: Variable "Pfad"
9. Achte Aktion: Pause. Selbsterklärend. Option: Eingabe dieser Aktion ignorieren.
10. Neunte Aktion: Endlosschleife. Selbsterklärend. Option: Eingabe dieser Aktion ignorieren.

Das fertige Programm kannst du dir dann in die Startobjekte legen.

Was ich in 10 Minuten noch nicht hinbekommen habe, waren unterschiedliche Ordner mit dem URL-Namen zu erstellen.
Aber vielleicht hilft das schon. Wenn es das tut, kann ich auch später noch Bilder einstellen, falls das noch mehr hilft.
„Keep IT simple, keep IT safe.“
+2
ratz-fatz
ratz-fatz05.12.1719:39
Eine wunderbare Sache für die tote Zeit zwischen den Jahren. Ich werde das dann mal in Ruhe angehen. Kann gut sein, dass ich mit dieser ganzen Automator-Geschichte doch noch Freundschaft schließe. Vielen Dank für die Tipps!
0
Megaseppl05.12.1722:17
caMpi
10. Neunte Aktion: Endlosschleife. Selbsterklärend. Option: Eingabe dieser Aktion ignorieren.

Die "Loop"-Aktion ist leider keine Endlosschleife. Man kann sie maximal 1000x loopen lassen (alternativ max. 1000 Minuten lang). Beim Defaultwert 0 wird gar nix gemacht. Auch die Möglichkeit innerhalb des Workflows sich selbst am Ende starten zu lassen (Aktion "Run Workflow") macht dies leider nur genau einmal.

Man kann Automatorprogramme allerdings auch durch den ganz normalen Kalender starten lassen . Damit könnte man es kombinieren (z.B. Termin für jede Nacht um 00:00 starten lassen) so dass man mit der limitierten Loop-Anzahl hinkommt. Alternativ kann man auch 1000 Minuten lang loopen lassen. Das wären dann etwa 16,7 Stunden. Für die Tagesaufnahmen der Kameras dürfte das zumindest im Winter reichen.
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.