Obtenir la liste des URL d'un site [fermé]

94

Je déploie un site de remplacement pour un client mais ils ne veulent pas que toutes leurs anciennes pages se terminent par 404. Garder l'ancienne structure d'URL n'était pas possible car c'était horrible.

J'écris donc un gestionnaire 404 qui devrait rechercher une ancienne page demandée et effectuer une redirection permanente vers la nouvelle page. Le problème est que j'ai besoin d'une liste de toutes les anciennes URL de page.

Je pourrais le faire manuellement, mais je serais intéressé s'il y a des applications qui me fourniraient une liste d'URL relatives (par exemple: / page / chemin, pas http: /.../ page / chemin) juste données à la maison page. Comme une araignée mais qui ne se soucie pas du contenu autre que de trouver des pages plus profondes.

Oli
la source
superuser.com/questions/329736/…
Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功

Réponses:

65

Je ne voulais pas répondre à ma propre question, mais j'ai simplement pensé à exécuter un générateur de plan de site. Le premier que j'ai trouvé sur http://www.xml-sitemaps.com a une belle sortie texte. Parfait pour mes besoins.

Oli
la source
Mais il y a une limite de 5000 liens! .. :( Je recherche un script de générateur de plan de site php gratuit.
Jenson M John
13
La limite actuelle est de 500 - devient plus petite…
Oli Studholme
Une erreur s'est produite pour moi: ::::::: Une erreur s'est produite Une erreur s'est produite lors de l'accès à l'URL spécifiée: 159.121.ssss Veuillez vous assurer de spécifier l'URL correcte du site Web et de renvoyer votre demande.
JustJohn
FYI: Si vous utilisez le routage frontend, vous n'obtiendrez pas ces routes à partir de cette méthode.
jasonleonhard
FYI: si le site Web utilise l'authentification et / ou l'autorisation, vous n'obtiendrez pas non plus toutes les routes.
jasonleonhard
46

faire wget -r -l0 www.oldsite.com

Ensuite, tout simplement find www.oldsite.comrévéler toutes les URL, je crois.

Sinon, diffusez simplement cette page personnalisée introuvable à chaque demande 404! C'est-à-dire que si quelqu'un utilisait le mauvais lien, il obtenait la page indiquant que la page n'était pas trouvée, et faisant quelques indices sur le contenu du site.

alamar
la source
15
Notamment, puisque cela renvoie une liste de fichiers , pas d'URL, cela ne fonctionnerait vraiment que pour les sites qui sont des collections de fichiers HTML statiques. Si le site a des paramètres de requête d'URL, des URL réécrites côté serveur ou tout type de include/ require/ etc. assemblage de pages, cela ne fonctionnera pas vraiment.
TJ Schuck
Je pourrais mal comprendre wget. Je pensais que «wget» était pour télécharger le contenu du site?
Cosmic Hawk
@Doomsy oui, mais une fois que vous avez téléchargé tout le contenu, vous connaissez sûrement toutes les URL de ce contenu, et sans téléchargement, il n'y a aucun moyen de trouver les URL.
alamar
1
Considérez la profondeur par défaut. gnu.org/software/wget/manual/html_node/…
PJ Brunet
1
@alamar Oui, il y a "-r -l inf" pour une récursion infinie, mais je recommande aux gens de consulter la documentation - tellement d'options intéressantes! L'option "-m" sera miroir et je vais essayer "-R.jpg, .jpeg, .gif, .png" qui, je pense, saute les images.
PJ Brunet
24

Voici une liste de générateurs de plan de site (à partir de laquelle vous pouvez évidemment obtenir la liste des URL d'un site): http://code.google.com/p/sitemap-generators/wiki/SitemapGenerators

Générateurs de plan de site Web

Vous trouverez ci-dessous des liens vers des outils qui génèrent ou gèrent des fichiers au format XML Sitemaps, une norme ouverte définie sur sitemaps.org et prise en charge par les moteurs de recherche tels que Ask, Google, Microsoft Live Search et Yahoo !. Les fichiers de sitemap contiennent généralement une collection d'URL sur un site Web ainsi que des méta-données pour ces URL. Les outils suivants génèrent généralement des fichiers Sitemap XML et des listes d'URL de type "Web" (certains peuvent également prendre en charge d'autres formats).

Remarque: Google n'a pas testé ni vérifié les fonctionnalités ou la sécurité des logiciels tiers répertoriés sur ce site. Veuillez adresser toute question concernant le logiciel à l'auteur du logiciel. Nous espérons que vous apprécierez ces outils!

Programmes côté serveur

  • Enarion phpSitemapsNG (PHP)
  • Google Sitemap Generator (Linux / Windows, 32 / 64bit, open-source)
  • Outil en PHP (français, PHP)
  • Générateur de plan de site Perl (Perl)
  • Générateur de plan de site Python (Python)
  • Sitemaps simples (PHP)
  • Générateur de plan de site dynamique XML SiteMap (PHP) $
  • Générateur de plan de site pour OS / 2 (REXX-script)
  • Générateur de plan de site XML (PHP) $

CMS et autres plugins:

  • ASP.NET - Sitemaps.Net
  • DotClear (espagnol)
  • DotClear (2)
  • Drupal
  • Modèles de commerce électronique (PHP) $
  • Modèles de commerce électronique (PHP ou ASP) $
  • LifeType
  • Générateur de plan de site MediaWiki
  • mnoGoSearch
  • Commerce OS
  • phpWebSite
  • Plone
  • RapidWeaver
  • Textpattern
  • vBulletin
  • Wikka Wiki (PHP)
  • WordPress

Outils téléchargeables

  • GSiteCrawler (Windows)
  • Créateur GWebCrawler et Sitemap (Windows)
  • G-Mapper (Windows)
  • Créateur de plan de site Inspyder (Windows) $
  • IntelliMapper (Windows) $
  • Générateur de plan de site Microsys A1 (Windows) $
  • Rage Google Sitemap Automator $ (OS-X)
  • Screaming Frog SEO Spider et générateur de plan de site (Windows / Mac) $
  • Plan du site Pro (Windows) $
  • Rédacteur de plan de site (Windows) $
  • Générateur de plan de site par DevIntelligence (Windows)
  • Outils Sitemap de Sorrowmans (Windows)
  • TheSiteMapper (Windows) $
  • Vigos Gsitemap (Windows)
  • Visual SEO Studio (Windows)
  • Générateur de plan de site WebDesignPros (application Java Webstart)
  • Weblight (Windows / Mac) $
  • Générateur de plan de site WonderWebWare (Windows)

Générateurs / services en ligne

  • Générateur de plan de site AuditMyPc.com
  • AutoMapIt
  • Plan du site automatique $
  • Enarion phpSitemapsNG
  • Générateur de plan de site gratuit
  • Générateur de plan de site Neuroticweb.com
  • Générateur de plan de site ROR
  • Générateur de plan de site ScriptSocket
  • Générateur de plan de site SeoUtility (italien)
  • Plan du siteDoc
  • Plan du site
  • Plan du site
  • Validateur XML de Google Sitemaps de Smart-IT-Consulting
  • Générateur de plan de site XML
  • Générateur de sitemaps XML

CMS avec générateurs de plan de site intégrés

  • Béton5

Générateurs de plan de site Google Actualités Les plugins suivants permettent aux éditeurs de mettre à jour les fichiers de plan de site de Google Actualités, une variante du protocole sitemaps.org que nous décrivons dans notre centre d'aide. Outre les propriétés normales des fichiers Sitemap, les sitemaps Google Actualités permettent aux éditeurs de décrire les types de contenu qu'ils publient, ainsi que de spécifier les niveaux d'accès pour les articles individuels. Vous trouverez plus d'informations sur Google Actualités dans notre centre d'aide et nos forums d'aide.

  • Plugin WordPress Google News

Extraits de code / bibliothèques

  • Script ASP
  • Script Emacs Lisp
  • Bibliothèque Java
  • Script Perl
  • Classe PHP
  • Script de générateur PHP

Si vous pensez qu'un outil doit être ajouté ou supprimé pour une raison légitime, veuillez laisser un commentaire sur le forum d'aide pour les webmasters.

Franck Dernoncourt
la source
Y a-t-il quelqu'un qui fournit un écran d'impression à partir de toutes les URL?
ValRob
6

Le meilleur que j'ai trouvé est http://www.auditmypc.com/xml-sitemap.asp qui utilise Java et n'a aucune limite sur les pages, et vous permet même d'exporter les résultats sous forme de liste d'URL brutes.

Il utilise également des sessions, donc si vous utilisez un CMS, assurez-vous que vous êtes déconnecté avant d'exécuter l'analyse.

Collins
la source
3
ça sonne bien, mais c'est cassé.
NoobishPro
2

Ainsi, dans un monde idéal, vous auriez une spécification pour toutes les pages de votre site. Vous auriez également une infrastructure de test qui pourrait frapper toutes vos pages pour les tester.

Vous n'êtes probablement pas dans un monde idéal. Pourquoi ne pas faire ça ...?

  1. Créez un mappage entre les anciennes URL bien connues et les nouvelles. Redirection lorsque vous voyez une ancienne URL. J'envisagerais peut-être de présenter un "cette page a été déplacée, sa nouvelle URL est XXX, vous serez bientôt redirigé".

  2. Si vous n'avez pas de mappage, présentez un message "désolé - cette page a été déplacée. Voici un lien vers la page d'accueil" et redirigez-le si vous le souhaitez.

  3. Enregistrez toutes les redirections, en particulier celles sans mappage. Au fil du temps, ajoutez des mappages pour les pages importantes.

Martin Peck
la source
2

wget à partir d'une boîte Linux peut également être une bonne option car il existe des commutateurs vers spider et modifier sa sortie.

EDIT: wget est également disponible sur Windows: http://gnuwin32.sourceforge.net/packages/wget.htm

Thomas Schultz
la source
1

Écrivez une araignée qui lit chaque html à partir du disque et produit chaque attribut "href" d'un élément "a" (peut être fait avec un analyseur). Gardez à l'esprit quels liens appartiennent à une certaine page (c'est une tâche courante pour une infrastructure de données MultiMap). Après cela, vous pouvez produire un fichier de mappage qui sert d'entrée pour le gestionnaire 404.

Mork0075
la source
0

J'examinerais un certain nombre d'outils de génération de plan de site en ligne. Personnellement, j'ai utilisé celui-ci (basé sur Java) dans le passé, mais si vous effectuez une recherche Google pour "constructeur de plan de site", je suis sûr que vous trouverez de nombreuses options différentes.

Eric Petroelje
la source