Schorsch: Welche Programmiersprache wählen?

Liebe html-Profis,

ich habe (noch ohne Web-Programmiererfahrung) folgende Frage:

Ich möchte (einige wenige) Webseiten per script regelmäßig durchsuchen lassen, das z.B. jeden Tag kurz aktiv wird und sich dann wieder "schlafen legt", und ich möchte dafür eine Programmiersprache wählen, die ich aber erst erlernen muss...
Die Suchergebnisse möchte ich (entweder über eine DB-Schnittstelle - z.B. an MySQL - oder einfach als ascii-Datei in einem Verzeichnis ablegen.
Die Struktur soll relativ statisch gehalten werden (also z.B. Suchseite 1, Suchseite 2,..., Suchseite n; Suchbegriff 1, Suchbegriff 2,..., Suchbegriff n,) ohne Metadatenbeschreibung für die Definition von Feldern, Feldpositionen etc. - evtl. mit "Vorschaltung" eines screens für die Eingabe/Änderung von Suchbegriffen.
Mir ist klar, dass es für ähnliche Aufgabenstellungen professionelle Software gibt, aber erst mal geht es mir nur darum, mir ein paar html- bzw. Webprogrammier-Grundbegriffe für eine client-seitige Logik anzueignen (also keine Web-Server-Programmierung).
(Der Anwendungsfall ist sicher etwas konstruiert - um tägliche Neuigkeiten aus dem Netz zu holen, ist mir aber langweiliges anklicken zu geistlos;-) )
Was wäre für die genannte Aufgabenstellung ausreichend/geeignet? Java, Javascript, PHP, Perl?
Gibt es "Minimalkriterien" für eine solche Abarbeitung einer client-seitigen Logik? (Ich denke, dass bloßes html-Wissen dafür nicht ausreicht...)

Im Voraus schon mal vielen Dank für Eure Tipps und Hinweise!

Schöne Grüße
Georg

  1. Hi,

    Ich möchte (einige wenige) Webseiten per script regelmäßig durchsuchen lassen, das z.B. jeden Tag kurz aktiv wird und sich dann wieder "schlafen legt", und ich möchte dafür eine Programmiersprache wählen, die ich aber erst erlernen muss...
    Was wäre für die genannte Aufgabenstellung ausreichend/geeignet? Java, Javascript, PHP, Perl?

    JavaScript ist eine Programmiersprache, die ursprünglich für den Einsatz im Browser gedacht ist. Ein Einsatz für deine Zwecke ist möglich, würde ich aber nicht empfehlen. Alle anderen genannten Sprachen sind geeignet und erfüllen alle Anforderungen locker.

    Von der Aufgabenstellung her hört sich das ganze am ehesten nach perl an, aber PHP ist an dieser Stelle mittlerweile fast gleichwertig und es gibt IMHO mehr aktuelle Tutorials zu PHP. Aber auch Java kann das alles locker, also würfel es einfach aus.

    Bis die Tage,
    Matti

    1. Hallo,

      JavaScript ist eine Programmiersprache, die ursprünglich für den Einsatz im Browser gedacht ist.

      Netscape, die Erfinder von JavaScript, verwendetet JavaScript sowohl client- als auch serverseitig. Zudem ist JavaScript seit der ECMAScript-Standardisierung eine allgemeine Sprache, nicht auf dem Browser ausgerichtet. Serverseitiges JavaScript ist schon lange erfolgreich, zum Beispiel CommonJS-Implementierungen wie Ringo und Narwal. In letzter Zeit hat vor allem NodeJS an Popularität gewonnen und die Zahl an Paketen dafür ist enorm.

      Mathias

      1. Hi,

        Netscape, die Erfinder von JavaScript, verwendetet JavaScript sowohl client- als auch serverseitig. Zudem ist JavaScript seit der ECMAScript-Standardisierung eine allgemeine Sprache, nicht auf dem Browser ausgerichtet. Serverseitiges JavaScript ist schon lange erfolgreich, zum Beispiel CommonJS-Implementierungen wie Ringo und Narwal. In letzter Zeit hat vor allem NodeJS an Popularität gewonnen und die Zahl an Paketen dafür ist enorm.

        hab das ganze ja herausgefordert. Dachte, ich spar mir ein wenig Tipperei und stell es mal verkürzt dar :-).

        Nun, mir ist durchaus bewusst, dass man JS auch serverseitig nutzen kann. Für einen Anfänger würde ich es trotzdem nicht empfehlen, da es für den konkreten Einsatzzweck (mit dem der OP ja lernen will) wenig(er) anschauliches Lehrmaterial gibt als in den genannten Alternativen; da findet man das Thema (HTTP-Requests stellen, Daten extrahieren und dann abspeichern) in den Grundlagenkapiteln. JS-Tutorials für Anfänger werden diese Themen eher selten behandeln.

        Aber: das ist nur eine persönliche Einschätzung. Nicht, dass du mich falsch verstehst; ich habe nichts gegen JavaScript, nutze es gerne und häufig, schreibe ganze Apps darin... einem Anfänger würde ich JavaScript für diesen Einsatzfall aber nicht empfehlen.

        BTW: wenn ich den OP korrekt verstehe, geht es ihm nicht unbedingt um einen Serverdienst. Ich würde es eher als CLI-Applikation entwickeln und als cronjob nutzen.

        Bis die Tage,
        Matti

        1. da es für den konkreten Einsatzzweck (mit dem der OP ja lernen will) wenig(er) anschauliches Lehrmaterial gibt als in den genannten Alternativen; da findet man das Thema (HTTP-Requests stellen, Daten extrahieren und dann abspeichern) in den Grundlagenkapiteln. JS-Tutorials für Anfänger werden diese Themen eher selten behandeln.

          In der Hinsicht ist wohl PHP am freundlichsten für Einsteiger, weil die wichtigsten Bibliotheken in den PHP-Interpreter verbacken werden und deren Dokumentation allesamt unter http://php.net/docs.php zu finden sind.

          JavaScript ist im Gegensatz zu PHP schlicht eine ubiquitäre Sprache, daher müsste man schon gezielt z.B. nach NodeJS suchen, um Tutorials für HTTP-Anfragen und Datei-Zugriffe zu finden. Sucht man nach PHP, so drehen sich die Suchergebnisse eigentlich immer um den einen PHP-Interpreter (ob nun CLI, CGI, Apache-Modul usw.) mit seinen Standardbibliotheken.

          Mathias

    2. Zuerst sollte immer die Frage stehen, welche Programmiersprache. Dann aber auch die Frage, ob man bereits Erfahrungen in der Programmiersprache hat.
      Eine Warenwirtschaft wird sicher sinnvoller sein mit c++ programmiert zu werden als mit visual basic. Wenn ich aber kein c++ kann, dann nehme ich Visual Basic. Eine neue Programmiersprache zu lernen braucht meiner Meinung nach mindestens 6 Monate für die Grundlagen.

      1. Moin richard,

        Zuerst sollte immer die Frage stehen, welche Programmiersprache.

        Das sehe ich anders. Die Programmiersprache ist idR zweitrangig.

        Dann aber auch die Frage, ob man bereits Erfahrungen in der Programmiersprache hat.

        Das sehe ich ähnlich.

        Wenn ich aber kein c++ kann, dann nehme ich Visual Basic.

        VisualBasic nimmt man nie! ;-)

        Eine neue Programmiersprache zu lernen braucht meiner Meinung nach mindestens 6 Monate für die Grundlagen.

        Naja, das ist übertrieben. Die Grundlagen der meisten Sprachen hat man innerhalb weniger Stunden gelernt, ist ja eh immer das gleiche. Das letzte mal das Gefühl, wirklich etwas sprachlich neues zu lernen hatte ich, als ich Erlang gelernt habe.

        LG,
         CK

      2. Eine Warenwirtschaft wird sicher sinnvoller sein mit c++ programmiert zu werden als mit visual basic.

        Du wirst staunen was man alles mit Visual Basic machen kann! Warum soll c++ hier besser sein? Begründung?

  2. Moin Schorsch,

    Was wäre für die genannte Aufgabenstellung ausreichend/geeignet? Java, Javascript, PHP, Perl?

    Alles. Selbst JavaScript ist inzwischen problemfrei einsetzbar für solche Zwecke. Du hast also die freie Auswahl.

    In Punkto Hype dürftest du mit Python, JavaScript oder Ruby am besten bedient sein, in Punkto Verbreitung dürfte PHP herausstechen. An deiner Stelle würde ich zwischen einer der vier Sprachen wählen. Perl ist zwar eine schöne Sprache, aber für Anfänger schwer zu erlernen.

    Falls deine Frage in Richtung „was benötige ich für diese Aufgabe“ abzielen: das hängt davon ab, was genau du willst. Zusammenfassen von News-Seiten und dann im Browser betrachten? In dem Fall benötigst du eine serverseitige Technologie (PHP, Java, Perl, Python, Ruby, JavaScript, …) sowie einen clientseitigen Part (HTML, CSS und ggfls. JavaScript).

    Wenn du etwas genauer wirst, kann man dir vielleicht spezifischer helfen.

    LG,
     CK

  3. Im Voraus schon mal vielen Dank für Eure Tipps und Hinweise!

    Wieso nimmst du dafür keine fertige Lösung? Da gibts passend fürjede Anzahl an Seiten das passende. z.B. ht/dig für wenige Seiten bis hin zu Nutch für viele millionen Seiten. Ich habe Nutch in Betrieb für ca. 4 Mio Seiten auf nem relativ kleinen Rechner.

    Als Lektüre würde ich http://winfwiki.wi-fom.de/index.php/Open_Source_Suchmaschinen_im_Vergleich empfehlen