Frage

Ich habe mehrere Web-Seiten auf verschiedenen Websites, die ich komplett gespiegelt werden soll. Das bedeutet, dass ich Bilder benötigen, CSS, etc, und die Verbindungen müssen umgewandelt werden. Diese Funktionalität wäre ähnlich wie mit Firefox auf „Seite speichern unter“ und wählen Sie „Webseite, komplett“. Ich mag die Dateien und entsprechende Verzeichnisse als etwas nennen sinnvoll (z myfavpage1.html, myfavpage1.dir).

Ich habe keinen Zugriff auf den Server, und sie sind nicht meine Seiten. Hier ist ein Beispiellink: Klick mich!

Eine wenig mehr Klarheit ... Ich habe über 100 Seiten, die ich (viele von langsamen Servern) gespiegelt werden soll, werde ich den Job auf Solaris 10 wird cron'ing und die Ergebnisse jede Stunde zu einem Samba-Halterung für Menschen Dumping sehen. Und, ja, ich habe wget offensichtlich versucht, mit verschiedenen Flaggen, aber ich habe nicht die Ergebnisse bekommen, für die ich suche. So, indem er auf die GNU wget Seite ist nicht wirklich hilfreich. Lassen Sie uns beginnen mit, wo ich mit einem einfachen Beispiel bin.

 wget --mirror -w 2 -p --html-extension --tries=3 -k -P stackperl.html "https://stackoverflow.com/tags/perl"

Aus diesem Grund sollte ich die https://stackoverflow.com/tags/perl Seite in der Datei stackper.html wenn ich die Fahnen hatte richtig.

War es hilfreich?

Lösung

Wenn Ihr gerade auf der Suche um einen Befehl auszuführen und eine Kopie einer Website zu erhalten, verwenden Sie die Werkzeuge, die andere vorgeschlagen haben, wie wget , curl oder einige der GUI-Tools. Ich benutze mein eigenes persönliches Werkzeug, das nenne ich WebReaper (das ist nicht der Windows-< obwohl a href = "http://www.webreaper.net/" rel = "nofollow noreferrer"> WebReaper Es gibt ein paar Perl Programme, die ich kenne, darunter webmirror und ein paar andere, die Sie auf CPAN .

Wenn Sie schauen, dies in einem Perl-Programm zu tun, Sie schreiben (da Sie den „perl“ Tag auf Ihrer Antwort haben), gibt es viele Werkzeuge in CPAN , dass Sie bei jedem Schritt helfen kann:

Viel Glück:)

Andere Tipps

Für eine HTML-ized Version Ihrer Websites WinHTTrack nutzen könnten - ein freies, Open Source, GPL-Programm zur Verfügung. Es wird nach unten ziehen vorgerenderten Versionen Ihrer Seiten, Grafiken, Dokumente, Zip-Dateien, Filme, etc ... Natürlich, da dies eine gespiegelte Kopie ist jeder dynamischer Backend-Code wie Datenbank-Anrufe wird nicht mehr dynamisch sein.

http://www.httrack.com/

persönlich das letzte Mal, dass ich den Drang hatte, dies zu tun, ich habe einen Python-Skript geschrieben, das eine Kopie meines Browser-Cache gemacht, dann alle Seiten manuell besuchte ich spiegeln wollte. Eine sehr hässliche Lösung, aber es hat den schönen Vorteil, jede nicht auslösenden „kratzt nicht meine Seite“ Alarme. Dank Opera 's Links Tab-Leiste, ‚manuell‘ Download Zehntausende von Seiten war nicht annähernd so hart wie würden Sie denken.

Ich werde Echo des „es ist nicht klar“ Kommentars. Sind diese Webseiten / Websites, die Sie erstellt haben, und Sie wollen, dass sie auf mehreren Servern bereitstellen? Wenn ja, verwenden Sie relative Verweise in Ihrem HTML, und Sie sollten in Ordnung sein. Oder verwenden Sie ein in Ihrem und passen es an jedem Standort. Aber Relativität ist wirklich der Weg zu gehen.

Oder sagen Sie, dass Sie Webseiten herunterladen möchten (wie die Stack-Überlauf Homepage, perl.com, etc.) auf Ihrem Computer lokale Kopien haben? Ich werde mit Daniel zustimmen -. Verwenden wget

Jim

Ich benutze WebReaper

Sie können wget Gnu-Tools verwenden, um eine ganze Seite wie diese greifen:

wget -r -p -np -k URL

oder, wenn Sie Perl verwenden, versuchen Sie diese Module:

  • LWP :: Simple

  • WWW :: Mechanize

Wenn wget ist kompliziert oder Sie nicht eine linuxbox haben Sie konnte immer Benutzer WebZIP

Es klingt wie Sie die Caching-Funktionalität von einem guten Proxy-Server zur Verfügung gestellt werden sollen.

Vielleicht so etwas wie SQUID Blick in? Ziemlich sicher, dass es kann es tun.

Dies ist eher eine Sysadmin Typ Frage als Programmierung though.

In den meisten modernen Websites das vordere Ende erzählt nur einen kleinen Teil der Geschichte. Unabhängig von Werkzeugen zum Abstreifen HTML, CSS und Javascript, werden Sie immer noch die Kernfunktionalität fehlen, die auf dem Server enthalten ist.

Vielleicht waren das heißt, Sie etwas anderes.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top