← Back to all products
$29
Backlink Checker
Backlink analysis tool with domain authority, anchor text distribution, and link quality scoring.
JSONMarkdownPythonCI/CD
📄 Product Preview
Try the interactive reader and demo tools below, or get the full product with all content unlocked.
📖 Interactive Reader (Free Preview) ⚙ Try Demo Tools 📦 Download Free Sample📁 File Structure 10 files
backlink-checker/
├── LICENSE
├── README.md
├── examples/
│ ├── backlinks.csv
│ └── backlinks.json
├── free-sample.zip
├── guide/
│ ├── 01_features.md
│ ├── 02_input-format.md
│ └── 03_where-to-get-your-backlink-data.md
├── index.html
└── src/
└── backlink_checker.py
📖 Documentation Preview README excerpt
Backlink Checker
SEO Toolkit by CodeVault
Check backlink status codes, detect broken links, analyze anchor text distribution, and export comprehensive link health reports — all from the command line with zero dependencies.
Features
- Link Health Check: Verify every backlink's HTTP status code (200, 301, 404, etc.)
- Redirect Chain Detection: Trace full redirect chains that dilute link equity
- Anchor Text Analysis: Distribution of anchor text across your backlink profile
- Link Type Breakdown: dofollow vs. nofollow vs. ugc vs. sponsored
- Domain Diversity: See which domains link to you most (and least)
- Health Grading: A-F grades per link + overall profile health score
- Offline Mode: Analyze distributions without making HTTP requests
- Multiple Output Formats: Human-readable text, JSON, or CSV
Installation
No installation needed. Just Python 3.10+ (standard library only).
# Copy the script to your project
cp src/backlink_checker.py /your/project/
# Or run it directly from this directory
python src/backlink_checker.py --help
Quick Start
# Basic check — analyze backlinks from a CSV file
python src/backlink_checker.py --input examples/backlinks.csv
# Offline analysis (no HTTP requests — just distributions)
python src/backlink_checker.py --input examples/backlinks.csv --offline
# JSON output for CI/CD integration
python src/backlink_checker.py --input examples/backlinks.json --format json
# Export results to a file
python src/backlink_checker.py --input examples/backlinks.csv --format csv --output report.csv
# Check target URLs instead of source URLs
python src/backlink_checker.py --input examples/backlinks.csv --check-target
# Verbose mode with custom timeout
python src/backlink_checker.py --input examples/backlinks.csv --verbose --timeout 10
Input Format
CSV
source_url,target_url,anchor_text,link_type
https://blog.example.com/article,https://yoursite.com/page,click here,dofollow
... continues with setup instructions, usage examples, and more.
📄 Code Sample .py preview
src/backlink_checker.py
#!/usr/bin/env python3
"""
Backlink Checker — SEO Toolkit by DataNest
Check backlink status codes, detect broken links, analyze anchor text
distribution, and export comprehensive link health reports.
Why this exists:
Backlinks are the backbone of off-page SEO, but they rot over time.
Pages get deleted, domains expire, redirects pile up, and your
carefully-earned links start returning 404s. This tool takes a list
of your backlinks (from Google Search Console, Ahrefs export, or a
simple CSV) and checks every single one — reporting status codes,
redirect chains, anchor text distribution, and link health grades.
Run it monthly. Catch dead links before Google does.
Usage:
python backlink_checker.py --input backlinks.csv
python backlink_checker.py --input backlinks.json --format json
python backlink_checker.py --input backlinks.csv --timeout 10 --workers 5
License: MIT
"""
from __future__ import annotations
import argparse
import csv
import json
import logging
import sys
import time
from collections import Counter, defaultdict
from dataclasses import dataclass, field
from pathlib import Path
from typing import Any
from urllib.parse import urlparse
from urllib.request import Request, urlopen
from urllib.error import HTTPError, URLError
# ---------------------------------------------------------------------------
# Constants
# ---------------------------------------------------------------------------
LOG = logging.getLogger("backlink-checker")
# User-Agent for requests — pretend to be a reasonable crawler, not a scraper
USER_AGENT = "BacklinkChecker/1.0 (SEO Audit Tool; +https://datanest.dev)"
# ... 634 more lines ...