Pages : 1
#1 Le 07/06/2010, à 14:58
- anarkita
detecteur de liens mort
bonjour
je crée actuellement un site web et recherche un logiciel qui visualise d'un coup tous les liens non valides sur mes pages. je suis sur lynx lucide
merci
la hiérarchie, c'est comme les étagère, plus c'est haut, moins ça sert...
Hors ligne
#2 Le 07/06/2010, à 20:12
- anarkita
Re : detecteur de liens mort
personne ne connait un logiciel dans ce genre?
la hiérarchie, c'est comme les étagère, plus c'est haut, moins ça sert...
Hors ligne
#3 Le 08/06/2010, à 09:18
- croconux
Re : detecteur de liens mort
Bonjour
le plus simple a mon avis serait de faire un script qui test tout les liens de ton code et si il n'existe plus que le script réécrive le lien sans les balises
regarde du côté du AWK
croconux
Hors ligne
#4 Le 10/06/2010, à 11:25
- smecher
Re : detecteur de liens mort
salut
http://packages.ubuntu.com/lucid/gurlchecker
peut etre
gurlchecker a essayer
http://smecher.ecchi.ca/
Hors ligne
#5 Le 25/05/2012, à 06:33
- nagadoudi
Re : detecteur de liens mort
Vois par ici http://forum.ubuntu-fr.org/viewtopic.php?id=12999
Hors ligne
#6 Le 25/05/2012, à 06:53
- k3c
Re : detecteur de liens mort
un script Python avec BeautifulSoup (qui va trouver tous les liens), puis un coup d'urllib2, et on regarde si le code retour est 404 ou pas (ou 200 -> OK, ou pas)
Ca suffit, non ?
Edit : un script rapide, il faut BeautifulSoup 4, prendre la version 4.0.5 à
http://www.crummy.com/software/BeautifulSoup/#Download
on passer le site à tester en paramètre, on affiche uniquement les liens morts/inaccessibles (code dans les 400 ou 500) et le code HTTP associé (403 accès interdit, 404, lien mort...) , je teste les liens relatifs, et je ne cherche que les liens commençant par http ou https
exemple
python test_url.py http://mon.site.atester.fr
#!/usr/bin/env python
# -*- coding:utf-8 -*-
from urllib2 import Request, urlopen, URLError, HTTPError
import bs4 as BeautifulSoup
import sys
html = urlopen(sys.argv[1]).read()
soup = BeautifulSoup.BeautifulSoup(html)
for link in soup.find_all('a'):
href = link.get('href')
try:
if href[:5].lower() not in ('http:', 'https'):
# print(href)
href = sys.argv[1] + href
x = urlopen(href).read()
except HTTPError, e:
print "unable to open link %s code %s" % (href, e.code)
pass
Dernière modification par k3c (Le 25/05/2012, à 10:56)
Debian 12 sur Thinkpad reconditionné
Hors ligne
Pages : 1