Détecteur de liens cassésDéveloppement et personnalisation

Un script Python qui parcourt votre site et liste chaque lien cassé avec la page où il se trouve

Généralement prêt en 15 minutesRetouches inclusesContrôle qualité
Formules
Paiement protégéEn savoir plus
  • Les retouches prévues par la formule sont gratuites.
  • Sans réponse de votre part dans les 3 jours suivant la livraison, le travail est validé automatiquement.

L’argent est réservé au paiement et versé uniquement une fois le travail validé.

Un script Python qui parcourt votre site et liste chaque lien cassé avec la page où il se trouve

Exemple de résultat

Exemple pour la formule Standard

Fusion des fichiers de ventes mensuels de 9 boutiques en un seul rapport Excel

Comment on le lance

python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO  Dossier : sales/2026-10, 9 fichiers trouvés
2026-11-02 09:14:03 INFO  shop-01.csv : 1 284 lignes
2026-11-02 09:14:04 INFO  shop-02.xlsx : 967 lignes
2026-11-02 09:14:04 WARN  shop-07.csv : 3 lignes sans prix ignorées (lignes 88, 412, 913)
2026-11-02 09:14:05 INFO  Terminé : 10 412 lignes -> report-2026-10.xlsx (feuilles « Ventes » et « Totaux »)

Des paramètres, pas du code

Les noms de colonnes de chaque boutique se trouvent dans settings.ini : une nouvelle boutique ou une colonne renommée, c’est une ligne à modifier :

[columns]
date = Date, Date de vente, Jour
product = Produit, Article, Désignation
quantity = Qté, Quantité, Pièces
price = Prix, Prix unitaire

Un extrait du code

def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
    """Lit le fichier d’une boutique et lui donne les noms de colonnes du rapport."""
    table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
    renamed = {}
    for name, variants in columns.items():
        found = next((c for c in table.columns if c.strip() in variants), None)
        if found is None:
            raise ReportError(f"{path.name} : aucune colonne pour '{name}' (recherché : {', '.join(variants)})")
        renamed[found] = name
    table = table.rename(columns=renamed)[list(columns)]
    table["shop"] = path.stem
    return table

Fichiers : une archive ZIP avec merge_sales.py (310 lignes), settings.ini, requirements.txt et un README qui explique comment installer Python, lancer le script et ce que signifie chaque message du journal. Le client le lance sur son propre ordinateur.

Client : une petite chaîne de 9 papeteries ; chaque boutique envoie ses ventes du mois en fichier CSV ou Excel, avec des noms de colonnes légèrement différents. Tâche : un seul script qui lit chaque fichier d’un dossier, met les colonnes au même format et écrit un rapport Excel unique avec toutes les ventes et une feuille de totaux par boutique.

Le client et tous les détails sont fictifs.

À propos de ce service

Les liens qui ne mènent nulle part agacent les visiteurs et donnent l’impression d’un site laissé à l’abandon : vieux articles de blog pointant vers des pages supprimées, liens produits après un changement de catalogue, sites partenaires fermés. Ce script Python part de votre page d’accueil, suit les liens internes de votre site page par page et vérifie chaque lien et, dès Standard, chaque image qu’il trouve. Il enregistre la liste des liens cassés avec l’erreur, la page où se trouve chacun et le texte du lien, pour que vous sachiez quoi corriger et où. Il ne lit que des pages publiques, à un rythme raisonnable que vous fixez, et ne se connecte jamais. Les liens ajoutés par JavaScript après le chargement peuvent lui échapper. Il est conçu pour votre propre site. Vous le lancez sur votre ordinateur et corrigez les liens vous-même.

Ce qui est inclus

  • Ce que vous recevezUne archive ZIP avec le script Python, un README avec des instructions pas à pas et, dès Standard, un fichier de paramètres avec la page de départ, les limites et le rythme ; le code est aussi affiché sur la page de la commande.
  • L’emplacement de chaque lienLa page, le texte du lien et l’erreur
  • Internes et sortantsLiens vers vos pages et vers d’autres sites
  • Rythme raisonnableUne pause entre les requêtes, que vous fixez
  • Pages publiques uniquementAucune connexion, aucun contournement de protection
  • Code lisibleAvec des commentaires, pour modifier facilement les limites plus tard

Comment ça marche

  1. 1
    TâcheVous donnez l’adresse du site et ce qu’il faut vérifier
  2. 2
    CodeNous écrivons le script et le guide pour le lancer
  3. 3
    Testez-leVous le lancez d’abord avec une petite limite de pages, puis sur tout le site
  4. 4
    RetouchesVous demandez des retouches selon votre formule et envoyez les éventuels messages d’erreur

Ce dont nous avons besoin

L’adresse de votre site, son nombre approximatif de pages et les sections à exclure (résultats de recherche, filtres, panier, pages d’administration). S’il faut vérifier les images et les liens vers d’autres sites en plus de vos pages. La vitesse autorisée : une page par seconde est un réglage raisonnable par défaut. Le format de rapport préféré (CSV ou Excel) et votre système : Windows, macOS ou Linux.

Nous vous demanderons :

  • Quelle est l’adresse de votre site ?
  • Que doit-il vérifier ?
  • Quelque chose à exclure ?
  • Où va-t-il tourner ?

Comparer les formules

FormulesEssentielLiens d’une liste de pages15 €StandardParcours du site avec paramètres30 €PremiumOutil de vérification des liens60 €
Délai1 jour2 jours3 jours
Retouches123
Codejusqu’à 150 lignesjusqu’à 400 lignesjusqu’à 1 000 lignes
Fichiers de code1jusqu’à 3jusqu’à 8
Fichier de paramètresNonOuiOui
Messages d’erreur clairs et journalNonOuiOui
Options de lancement et guide pour l’exécution planifiéeNonNonOui
Guide d’installation et d’utilisation (README)OuiOuiOui
LangagePythonPythonPython
Commander EssentielCommander StandardCommander Premium

Paiement protégé

Vous payez à la commande, mais l’argent n’est versé que pour un travail validé.

  • Prix fixeLe prix de la formule ne change pas après le paiement.
  • L’argent est réservéAu paiement, le montant est seulement réservé. Il n’est versé à Dleex qu’une fois le travail validé.
  • Vérifié avant livraisonChaque résultat passe un contrôle qualité avant de vous parvenir, et vous le voyez sur la page de la commande avant de le valider.
  • Retouches gratuitesDemandez des retouches dans le cadre de votre brief autant de fois que la formule le permet.
  • Validation au bout de 3 joursSi, dans les 3 jours suivant la livraison, vous n’avez ni validé le travail ni demandé de retouches, il est validé automatiquement. Si vous écrivez dans le chat de la commande après la livraison, la commande est mise en attente ; après notre réponse, nous pourrons relancer le délai de 3 jours et vous le signalerons dans le chat.
  • Travail refait ou remboursement intégralSi le résultat ne correspond pas à votre brief et que les retouches n’y ont rien changé, ou si le travail prend plus du double du délai prévu, écrivez dans le chat de la commande : nous referons le travail ou vous rembourserons intégralement.
Comment ça marche →

Questions et réponses

Puis-je vérifier le site de quelqu’un d’autre ?

Le script est conçu pour votre propre site. Vérifier la liste de vos liens sortants vers d’autres sites en fait partie, mais parcourir tout le site de quelqu’un d’autre n’est pas son but.

Pourquoi des liens qui fonctionnent apparaissent-ils dans le rapport ?

Certains sites répondent aux scripts par une erreur ou un blocage alors que la page s’ouvre très bien dans un navigateur. Ces liens sont signalés à part pour que vous les vérifiiez à la main.

Va-t-il ralentir mon site ?

Pas à un rythme raisonnable : par défaut, il demande une page par seconde, moins qu’un seul visiteur qui clique vite. Vous pouvez le ralentir encore dans les paramètres.

Va-t-il corriger les liens ?

Non. Il vous donne la liste de ce qui est cassé et où ; vous corrigez les liens dans l’éditeur de votre site. Nous ne nous connectons jamais à votre site.

Vous n’avez pas trouvé la réponse ?

Formules