Je dispose d'un répertoire contenant> 1000 fichiers .html, et je voudrais les vérifier tous pour les mauvais liens - de préférence en utilisant la console. Tout outil que vous pouvez recommander pour une telle tâche?Que utiliser pour vérifier les liens html dans un grand projet, sous Linux?
Répondre
Vous pouvez extraire des liens de fichiers html en utilisant le navigateur de texte Lynx. Les scripts Bash autour de cela ne devraient pas être difficiles.
J'utilise checklink (un projet W3C)
Tant que vous prenez soin de définir l'agent utilisateur et d'accepter les en-têtes (pour éviter les faux codes d'erreur provenant des détecteurs de bot), cela devrait fonctionner. –
Cela semblerait correct, mais il n'est certainement pas destiné à de tels projets de grande taille - il n'a aucun moyen de lister simplement les liens brisés, et la sortie pour mon projet est * vraiment * grande. –
Essayez les outils de ligne de commande webgrep ou, si vous êtes à l'aise avec Perl, le module HTML::TagReader par le même auteur.
vous pouvez utiliser wget
, par exemple
wget -r --spider -o output.log http://somedomain.com
au bas du fichier output.log, il indiquera si wget
a trouvé des liens brisés. vous pouvez analyser cela en utilisant awk/grep
Une autre ligne de commande ** wget ** pour vérifier les liens brisés peut être trouvée dans [cette réponse] (http://stackoverflow.com/a/15029100/1497596). Notez également qu'un commentaire que j'ai laissé sur cette réponse fournit un lien vers ** wget pour Windows **. – DavidRR
- 1. Les meilleures pratiques pour structurer un grand projet HTML
- 2. Utiliser grand dispatch central dans Linux
- 3. Inclure/organiser du HTML dans un grand projet javascript
- 4. Structurer un grand projet PHP
- 5. Utiliser git pour un grand site web
- 6. Analyse HTML pour les liens de domaine
- 7. comment utiliser Linux lib tels que timeval dans les fenêtres
- 8. php conception modèle pour grand projet et pour petit projet
- 9. C principal() dans un grand projet POO
- 10. Comment structurer un projet plus grand/compliqué?
- 11. Que fait un ./configure typique sous Linux?
- 12. Utiliser jQuery pour sélectionner les liens visités
- 13. Comment approcher les tests unitaires dans un grand projet
- 14. Utiliser les fichiers html d'un autre projet dans ASP.NET MVC
- 15. Comment imprimer tous les identifiants dans un grand projet C++?
- 16. localisation du grand projet
- 17. git-svn et un grand projet
- 18. Y at-il un moyen de vérifier les liens manquants?
- 19. BeautifulSoup - modifier tous les liens dans un morceau de HTML?
- 20. Meilleur navigateur pour les tests sous Safari Mobile sous Linux?
- 21. Comment puis-je obtenir des liens externes comme l'agilité HTML pour travailler dans mon projet C#?
- 22. Fichiers objets dans un exécutable sous Linux
- 23. comment utiliser to_sentence pour les liens?
- 24. Comment comparer 2 liens symboliques sous unix (Linux)?
- 25. fonction première()/cbreak (sous Linux), erreur de liens
- 26. Firefox Ajouter ON - Pour vérifier les liens absolus et relatifs
- 27. Compiler pour Windows sous Linux
- 28. Utiliser GVim sous Windows pour éditer des fichiers Linux distants?
- 29. Contrôle de version dans un grand projet SSL ETL
- 30. Recherche d'un format compact pour les livres électroniques HTML pour la lecture hors ligne sous Linux
Lynx peut le faire, mais il ne le supporte pas vraiment. wget est beaucoup mieux adapté pour le but. – reinierpost
Comment obtenez-vous wget pour afficher une liste de liens dans une page? – Quentin
C'est une idée géniale. Pourquoi n'y ai-je pas pensé plus tôt? –