Skip to main content

Link Checker: A GUI + JS-rendered multithreaded broken link checker for dynamic websites.

Project description

Ferb: Broken Link Checker

[GUI + JS Rendering + Multithreading]

A powerful, modern Broken Link Checker desktop application built with Python, featuring:

  • Full GUI (Tkinter)
  • JS-rendering support (Playwright) — Works with React, Next.js, Vue, Angular, etc.
  • Multithreading for extremely fast link scanning
  • Broken links highlighted in red
  • Filter to show only broken links
  • Column sorting
  • Export broken links to CSV
  • Copy broken links to clipboard
  • Optional green progress bar
  • Works as a standalone Windows .EXE (PyInstaller)

Features

1. JavaScript Rendering (Next.js / React)

Uses Playwright Chromium to render dynamic pages and extract real DOM links.

2. Multithreaded Link Checker

Link checks run in parallel using ThreadPoolExecutor, drastically reducing scan time.

3. GUI Application

Built with Tkinter:

  • URL input
  • Check links button
  • JS rendering toggle
  • Status bar
  • Progress bar
  • Link results table

4. Broken Link Identification

Broken links are:

  • Highlighted red
  • Filterable via “Show Broken Only”
  • Exportable and copyable

5. CSV Export & Clipboard Copy

Useful for audits, reports, SEO analysis, QA testing.

6. Sorting

Click table headers to sort by:

  • URL
  • Status
  • Broken?

7. EXE Support

Can be compiled to a standalone Windows application via PyInstaller.


Installation

1. Install dependencies

pip install playwright requests beautifulsoup4
python -m playwright install chromium
python -m pip install pyinstaller

2. Running

python linkCheckGUI.py

3. Building a Standalone .exe

python -m PyInstaller --onefile --noconsole linkCheckGUI.py

4. Repository

URL: https://github.com/shreyazh/BrokenLinkChecker

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ferb-1.0.0.tar.gz (18.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ferb-1.0.0-py3-none-any.whl (18.9 kB view details)

Uploaded Python 3

File details

Details for the file ferb-1.0.0.tar.gz.

File metadata

  • Download URL: ferb-1.0.0.tar.gz
  • Upload date:
  • Size: 18.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for ferb-1.0.0.tar.gz
Algorithm Hash digest
SHA256 1be7ff26c6b1b43e7baf7d2c955f6d394d77350871fb65ec948af57bf2f8621d
MD5 44f7625b0f6ff208afd2f1203de68415
BLAKE2b-256 1cf1d3c86224b9bf7de8b735d8a7f3e1e1586e38cc31ede73a7c7ad6e3e80479

See more details on using hashes here.

File details

Details for the file ferb-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: ferb-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for ferb-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aa90a2e7d8eb1880e8256fcd6f8a9e53b3d73c9abd8b84ace0cb2d5a34d95424
MD5 b124c363b541cd7e257e602bbc640600
BLAKE2b-256 457b932ffc355f7b749112d419dffd308fedd4acb77ed5961c7653055ce01896

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page