Ich habe diese Anfrage gestern schon einigen Experten geschickt (und sie damit hoffentlich nicht belästigt) im Glauben, dass das hier im Forum landen würde. Dass dem nicht so ist habe ich erst nach Versenden der Anfrage festgestellt. Also hier der Text, der ursprünglich hier rein sollte
Ich bin relativer Newbie was Programmierung anbetrifft (meine Anfänge
bisher:Turbo Pascal und Java/BlueJ), kann mich jedoch relativ schnell
einarbeiten in andere Sprachen (hoffe ich zumindest).
Ich möchte gern ein kleines Programm realisieren welches die
folgenden Funktionen beinhaltet:
eine URL soll in einem definierten Intervall aufgerufen werden
der Inhalt der generierten Seite soll auf bestimmte Inhalte bzw.
Eigenschaften hin überprüft werden
sofern eine Übereinstimmung von den Inhalten/Eigenschaften mit
vorher definierten Anforderungen/Inhalten gegeben ist, soll eine
E-Mail gesendet werden an einen (vorher definierten) E-Mail Account
Mehrfach gesendete E-Mails sollen ausgeschlossen werden (d.h. kein
E-Mail-Bombardement sofern ein „Treffer“ vorliegt)
Ich habe mir schon Gedanken gemacht, inwiefern man Teile der Aufgabe
mittels Makros realisieren könnte (z.B. Mausklick auf Firefox,
Mausklick auf Lesezeichen etc…) leider fällt mir nichts ein, wie
man einen Datenvergleich mit einem Makro realisieren könnte (ausser
einem externen Programm)!?
Meine Frage deshalb an die Experten: welche Programmiersprache ist
für einen Anfänger wie mich und für die gestellte Aufgabe am besten
geeignet? Wie würdet ihr an die Sache herangehen (welche Befehle würden sich anbieten/sollte ich mir mal anschauen)?
Wie würdet ihr an die Sache herangehen (welche
Befehle würden sich anbieten/sollte ich mir mal anschauen)?
Ich habe mal etwas halbwegs ähnliches (Mustersuche im Inhalt von Webseiten inclusive einem kleinen Spider) für die Uni gebastelt. Das waren im Endeffekt 4,5kb Perl-Code, die ich allerdings trotz Kommentaren beim spontanen überfliegen eher witzig finde.
Generell bietet sich wohl eine Skript-Sprache an, die Kontakt zu Webservern, HTML-Parsen und Mustersuche unterstützt.
eine URL soll in einem definierten Intervall aufgerufen
werden
der Inhalt der generierten Seite soll auf bestimmte Inhalte
bzw.
Eigenschaften hin überprüft werden
sofern eine Übereinstimmung von den Inhalten/Eigenschaften
mit
vorher definierten Anforderungen/Inhalten gegeben ist, soll
eine
E-Mail gesendet werden an einen (vorher definierten) E-Mail
Account
Mehrfach gesendete E-Mails sollen ausgeschlossen werden
(d.h. kein
E-Mail-Bombardement sofern ein „Treffer“ vorliegt)
perl.
Da kann man sich schnell einarbeiten (if, for, while etc… haben die gleiche Syntax wie in Java), es ist gut für Textanalysen geeignet, und mit vorhandenen Modulen kann man einen grossen Teil deiner Aufgaben erledigen.
Mit LWP::UserAgent kannst du Webseiten abrufen, mit Mail::Sendmail (oder ähnlichem) EMails verschicken.
geeignet? Wie würdet ihr an die Sache herangehen (welche
Befehle würden sich anbieten/sollte ich mir mal anschauen)?
Hi,
wie meine Vorposter schon bemerkten… Ich würde es auch mit einer Scripsprache machen. Und da würde ich es mit Perl oder PHP machen, je nachdem was einem näher liegt.
Du sagst nichts zum verwendeten Betriebssystem. Unter Linux tut’s da schon ein simples shell-skript unter Verwendung von „Bordmitteln“ wie wget, grep und mail. Je nach gesuchtem Inhalt wäre das ein Dreizeiler. Worum geht es denn?
Hallo, erstmal vielen Dank für die vielen Antworten!
Also ich habe bisher nur Erfahrungen mit Windows aufzuweisen… Linux bin ich noch sehr unerfahren, wenn gleich ich meine Javakurse stets unter Linux gemacht habe. Dreizeiler hört sich dennoch schonmal gut an Würde mir dafür auch Linux draufziehen, wenn es damit so schnell klappt.
Ich hab mir heute mal auf blauen Dunst Publikationen gekauft vom RRZN zu PHP und Visual Basic. Am liebsten wäre es mir, wenn ich das unter Windows laufen lassen könnte und auch gleich so richtige Fenster etc. verwenden kann, um zum Beispiel die Filterfunktionen einzustellen. Wenn es ein Dreizeiler unter Linux auch tut, so wäre ich aber auch nicht böse Je schneller ich sowas auf die Beine stelle, umso besser.
Das Programm könnte man vielfältig einsetzen, z.B. um sich wichtige News gleich direkt auf den E-Mailaccount schicken zu lassen, Aktienkurse bei starken Schwankungen per E-Mail zu erhalten (Bin kein Börsenguru kommt mir nur grad so in den Sinn), und und und.
Vielleicht fällt Euch ja ein Dreizeiler bzw. noch andere passende Befehle ein, die ich mal spontan ausprobieren, einbauen und ggf. erweitern kann
Fritze, könntest Du mir mal die Befehle grep und wget erläutern? mail ist ja wohl selbsterklärend
Gruß
Oggi
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
da du schon Erfahrungen in Turbo Pascal hast, empfehle ich dir Delphi. Für das Einlesen von Webseiten und die Versendung von mails gibt es fertige Komponenten, den Rest kennst du ja. Sollte auch nicht mehr als ein „Dreizeiler“ werden.
Hat die typischen Befehle die du auch von TPascal her kennst.
Außerdem viele fertige Klassen.
Verbindung zu Server - klein Problem.
Über Stream ne HTML laden - kein Problem.
Mit regulären Ausdrücken nach Tags suchen o.ä.
Oder evt. daraus ne XML erstellen und mit ner anderen XML vergleichen.
usw usw …
Nur die Programmieroberfläche is gewöhnungsbedürftig.
Ich nutze Visual Studio .net
Ist ähnlich dem Eclipse das du von Java her vielleicht kennst.
mfg … Martin
P.S. zu den Kosten
wenn du den richtigen findest kostet es nichts.
für manche is das eher ne Herausforderung.
Tatsache! Ich habe mir ein Programm namens Webmon runtergeladen… das sollte gehen!
Vielen Dank für den Tipp… jetzt hätte ich noch das Problem, dass ich nicht weiß, wie ich es dazu bewegen soll automatisch eine E-Mail an mich zu senden, falls es was findet.
Und es hat auch noch keine automatische Stopfunktion, d.h. es würde nach jedem Intervall eine E-Mail schreiben, was mein Postfach über kurz oder lang überquellen ließe.
Zudem kommt noch, dass es wohl allein an einem veränderten Zeit/Datum auf der Seite eine Veränderung der Seite anzeigt.
Hat da jemand nen Tipp, wie ich es dazu bewegen könnte, genau meine gewünschten Funktionen zu erfüllen?
Gruß
Oggi
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Ich habe nochmal ein bissel optimiert an den Funktionen, und habe das Programm jetzt soweit, dass es das Richtige ausspuckt. Bleibt noch das Problem mit dem E-Mail senden. Kann ich das über eine .Bat-Datei machen oder wie bekomme ich das mit Windowsmitteln hin? Habe auch einen WAMP-Server fürs PHP-Skript-ausprobieren installiert… vielleicht wäres also mit nem E-Mail-PHP-script getan?
Gruß
Oggi
P.S.: Vielen Dank nochmal für die vielen Ratschläge!
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Ich möchte gern ein kleines Programm realisieren welches die
folgenden Funktionen beinhaltet:
eine URL soll in einem definierten Intervall aufgerufen
werden
cron, wget o. curl
der Inhalt der generierten Seite soll auf bestimmte Inhalte
bzw.
Eigenschaften hin überprüft werden
grep, evtl. sed
sofern eine Übereinstimmung von den Inhalten/Eigenschaften
mit
vorher definierten Anforderungen/Inhalten gegeben ist, soll
eine
E-Mail gesendet werden an einen (vorher definierten) E-Mail
Account
mail, sendmail, etc.
Mehrfach gesendete E-Mails sollen ausgeschlossen werden
(d.h. kein
E-Mail-Bombardement sofern ein „Treffer“ vorliegt)
grep & Log-Datei mit mit versandten Mails, evtl. md5sum
Meine Frage deshalb an die Experten: welche Programmiersprache
ist
für einen Anfänger wie mich und für die gestellte Aufgabe am
besten
geeignet? Wie würdet ihr an die Sache herangehen (welche
Befehle würden sich anbieten/sollte ich mir mal anschauen)?
20 Zeilen bash-Script und ein paar Standardprogrammen (Ob das mit WSH unter Windows auch geht, weiss ich nicht).
Also wie schon geschrieben habe ich jetzt ein Programm gefunden (http://www.markwell.btinternet.co.uk/webmon/), welches automatisch den Inhalt von Internetseiten auf Checksum-basis untersucht. Ich müsste dem Programm jetzt nur noch beibringen, mir automatisch eine E-Mail zu senden bei einer Änderung.
Ich kann dem Programm als „Alarm“ eine URL angeben, müsste dazu aber ein PHP-Script oder ähnliches haben, um eine E-Mail versenden zu können. Wie könnte ich das am schnellsten erreichen?
Gruß
Oggi
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Also wie schon geschrieben habe ich jetzt ein Programm
gefunden (http://www.markwell.btinternet.co.uk/webmon/),
welches automatisch den Inhalt von Internetseiten auf
Checksum-basis untersucht. Ich müsste dem Programm jetzt nur
noch beibringen, mir automatisch eine E-Mail zu senden bei
einer Änderung.
Ich kann dem Programm als „Alarm“ eine URL angeben, müsste
dazu aber ein PHP-Script oder ähnliches haben, um eine E-Mail
versenden zu können. Wie könnte ich das am schnellsten
erreichen?