Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 07/06/2010, à 15: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, à 21: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, à 10: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, à 12: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, à 07:33

nagadoudi

Re : detecteur de liens mort

Hors ligne

#6 Le 25/05/2012, à 07: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, à 11:56)


Archlinux sur Xiaomi Air 13

Hors ligne