Eine Liste der URLs von einer Site abrufen [geschlossen]

94

Ich stelle eine Ersatzwebsite für einen Client bereit, aber er möchte nicht, dass alle alten Seiten in 404s enden. Die alte URL-Struktur beizubehalten war nicht möglich, weil sie abscheulich war.

Ich schreibe also einen 404-Handler, der nach einer angeforderten alten Seite suchen und eine permanente Umleitung zur neuen Seite durchführen soll. Das Problem ist, ich brauche eine Liste aller alten Seiten-URLs.

Ich könnte dies manuell tun, aber es würde mich interessieren, ob es Apps gibt, die mir eine Liste relativer (z. B. / page / path, nicht http: /.../ page / path) URLs liefern, die gerade die Startseite angegeben haben Seite. Wie eine Spinne, aber eine, die sich nicht um den Inhalt kümmert, außer um tiefere Seiten zu finden.

Oli
quelle
superuser.com/questions/329736/…
Ciro Santilli 法轮功 冠状 冠状 病 六四 事件 法轮功

Antworten:

65

Ich wollte meine eigene Frage nicht beantworten, dachte aber nur darüber nach, einen Sitemap-Generator zu betreiben. Als erstes fand ich, dass http://www.xml-sitemaps.com eine schöne Textausgabe hat. Perfekt für meine Bedürfnisse.

Oli
quelle
Aber es gibt ein Limit von 5000 Links! .. :( Ich suche nach einem kostenlosen PHP-Sitemap-Generator-Skript.
Jenson M John
13
Aktuelle Grenze ist 500 - kleiner werden ...
Oli Studholme
Es ist für mich ein Fehler aufgetreten: ::::::: Es ist ein Fehler aufgetreten. Beim Zugriff auf die angegebene URL ist ein Fehler aufgetreten: 159.121.ssss Bitte geben Sie die richtige Website-URL an und senden Sie Ihre Anfrage erneut.
JustJohn
Zu Ihrer Information: Wenn Sie Frontend-Routing verwenden, erhalten Sie diese Routen nicht von dieser Methode.
Jasonleonhard
Zu Ihrer Information: Wenn die Website Authentifizierung und / oder Autorisierung verwendet, erhalten Sie auch nicht alle Routen.
Jasonleonhard
46

machen wget -r -l0 www.oldsite.com

Dann find www.oldsite.comwürde ich einfach alle URLs enthüllen, glaube ich.

Alternativ können Sie diese benutzerdefinierte, nicht gefundene Seite auch bei jeder 404-Anfrage bereitstellen! Das heißt, wenn jemand den falschen Link verwendet, erhält er die Seite, auf der angegeben wird, dass die Seite nicht gefunden wurde, und gibt Hinweise zum Inhalt der Website.

Alamar
quelle
15
Da dies eine Liste von Dateien und keine URLs zurückgibt , funktioniert dies nur für Websites, die Sammlungen statischer HTML-Dateien sind. Wenn die Site URL-Abfrageparameter, serverseitig umgeschriebene URLs oder irgendeine Art von include/ require/ etc. Verfügt . Zusammenstellung von Seiten, das wird nicht wirklich funktionieren.
TJ Schuck
Ich könnte wget falsch verstehen. Ich dachte 'wget' war für das Herunterladen der Inhalte der Website?
Cosmic Hawk
@Doomsy ja, aber wenn Sie den gesamten Inhalt heruntergeladen haben, kennen Sie sicherlich alle URLs zu diesem Inhalt, und ohne den Download gibt es keine Möglichkeit, URLs herauszufinden.
Alamar
1
Betrachten Sie die Standardtiefe. gnu.org/software/wget/manual/html_node/…
PJ Brunet
1
@alamar Ja, es gibt "-r -l inf" für unendliche Rekursion, aber ich empfehle den Leuten, die Dokumentation zu lesen - so viele coole Optionen! Die Option "-m" wird gespiegelt und ich werde "-R.jpg, .jpeg, .gif, .png" versuchen, wobei ich denke, dass Bilder übersprungen werden.
PJ Brunet
24

Hier ist eine Liste der Sitemap-Generatoren (von denen Sie natürlich die Liste der URLs von einer Site abrufen können ): http://code.google.com/p/sitemap-generators/wiki/SitemapGenerators

Web-Sitemap-Generatoren

Im Folgenden finden Sie Links zu Tools, die Dateien im XML-Sitemaps-Format generieren oder verwalten, einem offenen Standard, der auf sitemaps.org definiert ist und von Suchmaschinen wie Ask, Google, Microsoft Live Search und Yahoo! unterstützt wird. Sitemap-Dateien enthalten im Allgemeinen eine Sammlung von URLs auf einer Website sowie einige Metadaten für diese URLs. Die folgenden Tools generieren im Allgemeinen XML-Sitemap- und URL-Listendateien vom Typ "Web" (einige unterstützen möglicherweise auch andere Formate).

Bitte beachten Sie: Google hat die Funktionen oder die Sicherheit der auf dieser Website aufgeführten Software von Drittanbietern nicht getestet oder verifiziert. Bei Fragen zur Software wenden Sie sich bitte an den Autor der Software. Wir wünschen Ihnen viel Spaß mit diesen Tools!

Serverseitige Programme

  • Enarion phpSitemapsNG (PHP)
  • Google Sitemap Generator (Linux / Windows, 32/64-Bit, Open Source)
  • Outil en PHP (Französisch, PHP)
  • Perl Sitemap Generator (Perl)
  • Python Sitemap Generator (Python)
  • Einfache Sitemaps (PHP)
  • SiteMap XML Dynamic Sitemap Generator (PHP) $
  • Sitemap-Generator für OS / 2 (REXX-Skript)
  • XML Sitemap Generator (PHP) $

CMS und andere Plugins:

  • ASP.NET - Sitemaps.Net
  • DotClear (Spanisch)
  • DotClear (2)
  • Drupal
  • ECommerce-Vorlagen (PHP) $
  • E-Commerce-Vorlagen (PHP oder ASP) $
  • Lebenstyp
  • MediaWiki Sitemap Generator
  • mnoGoSearch
  • OS Commerce
  • phpWebSite
  • Plone
  • RapidWeaver
  • Textmuster
  • vBulletin
  • Wikka Wiki (PHP)
  • WordPress

Herunterladbare Tools

  • GSiteCrawler (Windows)
  • GWebCrawler & Sitemap Creator (Windows)
  • G-Mapper (Windows)
  • Inspyder Sitemap Creator (Windows) $
  • IntelliMapper (Windows) $
  • Microsys A1 Sitemap Generator (Windows) $
  • Wut Google Sitemap Automator $ (OS-X)
  • Screaming Frog SEO Spider und Sitemap Generator (Windows / Mac) $
  • Site Map Pro (Windows) $
  • Sitemap Writer (Windows) $
  • Sitemap Generator von DevIntelligence (Windows)
  • Sorrowmans Sitemap Tools (Windows)
  • TheSiteMapper (Windows) $
  • Vigos Gsitemap (Windows)
  • Visual SEO Studio (Windows)
  • WebDesignPros Sitemap Generator (Java Webstart-Anwendung)
  • Weblight (Windows / Mac) $
  • WonderWebWare Sitemap Generator (Windows)

Online-Generatoren / -Dienste

  • AuditMyPc.com Sitemap Generator
  • AutoMapIt
  • Autositemap $
  • Enarion phpSitemapsNG
  • Kostenloser Sitemap Generator
  • Neuroticweb.com Sitemap Generator
  • ROR Sitemap Generator
  • ScriptSocket Sitemap Generator
  • SeoUtility Sitemap Generator (Italienisch)
  • SitemapDoc
  • Sitemapspal
  • SitemapSubmit
  • Smart-IT-Beratung Google Sitemaps XML Validator
  • XML-Sitemap-Generator
  • XML-Sitemaps Generator

CMS mit integrierten Sitemap-Generatoren

  • Beton5

Google News Sitemap-Generatoren Mit den folgenden Plugins können Publisher Google News Sitemap-Dateien aktualisieren, eine Variante des Sitemaps.org-Protokolls, das wir in unserer Hilfe beschreiben. Zusätzlich zu den normalen Eigenschaften von Sitemap-Dateien können Publisher mit Google News Sitemaps die von ihnen veröffentlichten Inhaltstypen beschreiben und Zugriffsebenen für einzelne Artikel festlegen. Weitere Informationen zu Google News finden Sie in unserer Hilfe und in den Hilfeforen.

  • WordPress Google News Plugin

Code-Schnipsel / Bibliotheken

  • ASP-Skript
  • Emacs Lisp-Skript
  • Java-Bibliothek
  • Perl-Skript
  • PHP-Klasse
  • PHP-Generator-Skript

Wenn Sie der Meinung sind, dass ein Tool aus einem legitimen Grund hinzugefügt oder entfernt werden sollte, hinterlassen Sie bitte einen Kommentar im Webmaster-Hilfeforum.

Franck Dernoncourt
quelle
Gibt es jemanden, der einen Druckbildschirm aus der gesamten URL bereitstellt?
ValRob
6

Das Beste, was ich gefunden habe, ist http://www.auditmypc.com/xml-sitemap.asp , das Java verwendet, keine Seitenbeschränkung aufweist und Sie sogar Ergebnisse als unformatierte URL-Liste exportieren können.

Es werden auch Sitzungen verwendet. Wenn Sie also ein CMS verwenden, stellen Sie sicher, dass Sie abgemeldet sind, bevor Sie den Crawl ausführen.

Collins
quelle
3
klang gut, aber es ist kaputt.
NoobishPro
2

In einer idealen Welt hätten Sie also eine Spezifikation für alle Seiten Ihrer Site. Sie hätten auch eine Testinfrastruktur, die alle Ihre Seiten zum Testen aufrufen könnte.

Du bist vermutlich nicht in einer idealen Welt. Warum nicht das tun ...?

  1. Erstellen Sie eine Zuordnung zwischen den bekannten alten und den neuen URLs. Weiterleiten, wenn Sie eine alte URL sehen. Ich würde möglicherweise in Betracht ziehen, ein "Diese Seite wurde verschoben, die neue URL ist XXX, Sie werden in Kürze umgeleitet" zu präsentieren.

  2. Wenn Sie keine Zuordnung haben, zeigen Sie die Meldung "Entschuldigung - diese Seite wurde verschoben. Hier ist ein Link zur Startseite" an und leiten Sie sie weiter, wenn Sie möchten.

  3. Protokollieren Sie alle Weiterleitungen - insbesondere diejenigen ohne Zuordnung. Fügen Sie im Laufe der Zeit Zuordnungen für wichtige Seiten hinzu.

Martin Peck
quelle
2

Wget von einer Linux-Box könnte auch eine gute Option sein, da es Schalter für Spider gibt und die Ausgabe ändert.

BEARBEITEN: wget ist auch unter Windows verfügbar: http://gnuwin32.sourceforge.net/packages/wget.htm

Thomas Schultz
quelle
1

Schreiben Sie eine Spinne, die jedes HTML von der Festplatte einliest und jedes "href" -Attribut eines "a" -Elements ausgibt (kann mit einem Parser durchgeführt werden). Denken Sie daran, welche Links zu einer bestimmten Seite gehören (dies ist eine häufige Aufgabe für eine MultiMap-Datenstruktur). Danach können Sie eine Mapping-Datei erstellen, die als Eingabe für den 404-Handler dient.

Mork0075
quelle
0

Ich würde mir eine beliebige Anzahl von Tools zur Generierung von Online-Sitemaps ansehen. Persönlich habe ich diese (Java-basiert) in der Vergangenheit verwendet, aber wenn Sie eine Google-Suche nach "Sitemap Builder" durchführen, werden Sie sicher viele verschiedene Optionen finden.

Eric Petroelje
quelle