Welche Sprache empfiehlt sich für dieses Programm?

Hallo zusammen,

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 :wink:

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)?

Vielen Dank im voraus für Eure Ratschläge

Mit freundlichen Grüßen
Oggi

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.

Hallo,

  • 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.

So, genug der Werbung. Als Einstieg empfehle ich, http://www.perl.org/ zu lesen, für alle weiteren Fragen http://cpan.org/

Grüße,
Moritz

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.

HTH
Quaser

Hallo,

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?

Gruß

Fritze

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 :wink: 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 :wink: 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 :wink:
Fritze, könntest Du mir mal die Befehle grep und wget erläutern? mail ist ja wohl selbsterklärend :wink:

Gruß
Oggi

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo,

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.

LG
Jochen

Rein aus Interesse: was würde so etwas in etwa kosten, wenn man es programmieren liesse?

Gruß
Oggi

Hallo

Rein aus Interesse: was würde so etwas in etwa kosten, wenn
man es programmieren liesse?

Wenn man was genau programmieren liesse?

Aber ich schätze, das wird nicht unter
einem Päckchen Kaffee oder einer
Flasche Rotwein abgehen.

Grüße

CMБ

Hallo,

sicher, dass hier nix dabei ist: http://www.google.com/search?q=webseiten+auf+%C3%A4n…

Ciao! Bjoern

C#
Ich finde C# recht einfach.

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]

Hallo !

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).

Alexander

Hallo

20 Zeilen bash-Script und ein paar Standardprogrammen (Ob das
mit WSH unter Windows auch geht, weiss ich nicht).

Die Regel ist: geht es mit „xx“ Zeilen bash,
dann geht es auch mit „xx/10“ Zeilen Perl :wink:

Grüße

CMБ

PS: auch für Win32 gibt es Perl. Mit W-SH würde
ich eher nicht anfangen …

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]

Hallo

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?

Das wird alles eine Fitzelei.
Besorg Dir doch lieber Activestateperl,
(http://www.activestate.com/Products/ActivePerl/)

In Perl ist Dein Problem wirklich sehr
leicht zu lösen. Eine E-Mail zu versenden,
ist kein allzu grosses Ding.
http://aspn.activestate.com/ASPN/docs/ActivePerl/lib…

Und hier gibt es ja ein Perl-Forum!

Grüße

CMБ