CharlesM: Anfängerfrage: Perl-Modul, um WWW-Seiten zu parsen

Meine Perl-Kenntnisse sind bescheiden bis mittel. Manchem mag diese Frage daher sehr blöde vorkommen. Egal.

Ich muss des öfteren eine Reihe von Internet-Seiten (ca. 50-60) auf unterschiedlichen Servern und Domains besuchen, den Text der Seiten als Nur-Text erfassen und das Ganze zu einem Report zusammenfassen. Es geht um eine sozialwissenschaftliche Analyse von Internet-Seiten zum Thema Gesundheit.

Bisher habe ich das immer von Hand gemacht: Im Browser die Linkliste abgearbeitet, Seiten aufgerufen, gespeichert, später dann die HTML-Tags mit einem Perl-Skript entfernt und die Texte in eine Datei hintereinander gepackt. Das Ganze steht mir noch fünf- oder sechsmal bevor, so dass ich dachte: Das müsste man doch automatisieren können.
Das Problem: Ich habe null Ahnung, wie ich in einem Perl-Skript - das zuhause auf dem Rechner laufen soll - eine Internet-Verbindung herstelle und unterschiedliche URLs damit aufrufe. Gibt's dafür igendwo Infos, Erläuterungen, Perl-Module?
Gerd

  1. Holla,

    Bisher habe ich das immer von Hand gemacht: Im Browser die Linkliste abgearbeitet, Seiten aufgerufen, gespeichert, später dann die HTML-Tags mit einem Perl-Skript entfernt und die Texte in eine Datei hintereinander gepackt. Das Ganze steht mir noch fünf- oder sechsmal bevor, so dass ich dachte: Das müsste man doch automatisieren können.

    Ich denke das ganze lässt sich ziemlich leicht mit LWP:Simple realisieren , damit lädst Du quasie die HTML seite in den Speicher, bearbeitest diese ( das Script hast Du je bereits ) und speicherst es , fertig ;)

    Als Anfang:
    use LWP::Simple;
    my $webseite = get('http://www.google.de');

    Damit hast Du den Quelltext in $webseite und der Rest wird dann auch sicher langsam vorangehen oder ? ;)
    Ansonsten: http://www.cpan.org da werden sie geholfen ;)

    MfG
    AndreasN

    --
    Wer lesen kann ist klar im Vorteil
  2. hi!

    Das Problem: Ich habe null Ahnung, wie ich in einem Perl-Skript - das
    zuhause auf dem Rechner laufen soll - eine Internet-Verbindung
    herstelle und unterschiedliche URLs damit aufrufe. Gibt's dafür
    igendwo Infos, Erläuterungen, Perl-Module?

    Webseiten abrufen geht in Perl mit dem Modul LWP::Simple, HTML-Seiten
    kann man parsen mit HTML::Parser (wobei für einfache Sachen auch
    reguläre Ausdrücke durchaus ausreichen sollten).

    bye, Frank!

    --
    Never argue with an idiot. He will lower you to his level and then
    beat you with experience.
  3. Hi!

    Ich habe eine ähnliche Aufgabe zu lösen und mir kommt die Lösung von euch beiden mit LWP::Simple wie gerufen, danke!

    Aber, bei mir gibts das noch nicht in der Standartinstallation und bei CPAN fidne ich auch keine einfache tar.gz oder so für den Download und das einfach installieren. Habt ihr da mal nen Tip, wie man das nachgerüstet bekommt?

    Dankeschön, SaschaLR

    1. Hi!

      Ich habe eine ähnliche Aufgabe zu lösen und mir kommt die Lösung von euch beiden mit LWP::Simple wie gerufen, danke!

      Aber, bei mir gibts das noch nicht in der Standartinstallation und bei CPAN fidne ich auch keine einfache tar.gz oder so für den Download und das einfach installieren. Habt ihr da mal nen Tip, wie man das nachgerüstet bekommt?

      Was für eine Installation hast du denn?

      eigentlich sollte das Modul dabei sein. Entweder du hast ein so exotisches OS oder eine veraltete Perl Version.

      Wen dem so ist, brauchst du von hier http://www.cpan.org/modules/by-module/LWP/ das Paket libwww

      Struppi.

    2. Probier es mal hier:

      http://search.cpan.org/~gaas/libwww-perl-5.75/

      Charles