check links in web documents or full websites
Find a file
2022-02-22 19:35:04 +00:00
.github Run apt update in build.yml 2022-01-19 19:35:24 +00:00
cgi-bin Use python3 for cgi-bin/lc.wsgi 2021-01-28 19:20:24 +00:00
config Install linkcheckerrc in the package data 2021-12-30 19:27:04 +00:00
doc Update files to be edited during release process 2022-02-22 19:35:04 +00:00
linkcheck Add Telegram and WhatsApp link schemes 2022-02-06 23:41:33 +01:00
po Update application translation catalogs 2021-12-21 19:41:24 +00:00
scripts Add Telegram and WhatsApp link schemes 2022-02-06 23:41:33 +01:00
tests Output msgfmt error on test_pos failure 2022-01-19 19:31:01 +00:00
windows Remove home-cooked htmlparser and use BeautifulSoup 2019-07-22 19:59:37 +01:00
.git_archival.txt Make installing from the git archive of a tagged commit possible 2021-12-06 19:40:02 +00:00
.gitattributes Make installing from the git archive of a tagged commit possible 2021-12-06 19:40:02 +00:00
.gitignore Remove Portable 2021-12-30 19:27:04 +00:00
.project Add Eclipse Pydev project files. 2011-05-18 21:12:18 +02:00
.pydevproject Updated pydev settings. 2011-12-17 19:13:43 +01:00
.yamllint Add a yamllint check for workflows 2021-11-30 19:45:17 +00:00
CODE_OF_CONDUCT.rst Include CONTRIBUTING and CODE_OF_CONDUCT in Sphinx documentation 2020-08-15 17:02:40 +01:00
CONTRIBUTING.rst Fix broken external links in documentation 2021-08-12 19:28:50 +01:00
COPYING Moved some files into the doc/ subdirectory. 2010-03-06 21:52:25 +01:00
dev-requirements.txt Remove unused py2app from dev-requirements.txt 2020-08-23 17:24:09 +01:00
Dockerfile Version application using setuptools_scm 2021-11-28 18:55:46 +00:00
install-rpm.sh Fix RPM installer generation. 2012-04-11 18:41:34 +02:00
Makefile Stop using biplist 2020-10-12 19:55:46 +01:00
MANIFEST.in Enable creating a binary with PyOxidizer 2021-12-30 19:27:04 +00:00
pyoxidizer.bzl Enable creating a binary with PyOxidizer 2021-12-30 19:27:04 +00:00
pytest.ini Move some pytest options into pytest.ini 2019-10-21 17:42:29 +03:00
README.rst Use the website for installation link in README 2022-02-22 19:35:04 +00:00
requirements.txt Drop support for Beautiful Soup < 4.8.1 2021-01-28 19:20:24 +00:00
robots.txt Add non-ascii values to test robots.txt 2008-07-13 13:01:59 +00:00
setup.cfg Generate linkchecker command using an entry point 2021-12-20 19:34:58 +00:00
setup.py Enable creating a binary with PyOxidizer 2021-12-30 19:27:04 +00:00
tox.ini Raise minimum Python requirement to 3.7 2021-12-30 19:27:04 +00:00

LinkChecker
============

|Build Status|_ |License|_

.. |Build Status| image:: https://github.com/linkchecker/linkchecker/actions/workflows/build.yml/badge.svg?branch=master
.. _Build Status: https://github.com/linkchecker/linkchecker/actions/workflows/build.yml
.. |License| image:: https://img.shields.io/badge/license-GPL2-d49a6a.svg
.. _License: https://opensource.org/licenses/GPL-2.0

Check for broken links in web sites.

Features
---------

- recursive and multithreaded checking and site crawling
- output in colored or normal text, HTML, SQL, CSV, XML or a sitemap graph in different formats
- HTTP/1.1, HTTPS, FTP, mailto:, news:, nntp:, Telnet and local file links support
- restrict link checking with regular expression filters for URLs
- proxy support
- username/password authorization for HTTP, FTP and Telnet
- honors robots.txt exclusion protocol
- Cookie support
- HTML5 support
- a command line and web interface
- various check plugins available

Installation
-------------

Python 3.7 or later is needed. Using pip to install LinkChecker:

``pip3 install linkchecker``

The version in the pip repository may be old, to find out how to get the latest
code, plus platform-specific information and other advice see `doc/install.txt`_
in the source code archive.

.. _doc/install.txt: https://linkchecker.github.io/linkchecker/install.html


Usage
------
Execute ``linkchecker https://www.example.com``.
For other options see ``linkchecker --help``, and for more information the
manual pages `linkchecker(1)`_ and `linkcheckerrc(5)`_.

.. _linkchecker(1): https://linkchecker.github.io/linkchecker/man/linkchecker.html

.. _linkcheckerrc(5): https://linkchecker.github.io/linkchecker/man/linkcheckerrc.html

Docker usage
-------------

If you do not want to install any additional libraries/dependencies you can use
the Docker image which is published on GitHub Packages.

Example for external web site check::

  docker run --rm -it -u $(id -u):$(id -g) ghcr.io/linkchecker/linkchecker:latest --verbose https://www.example.com

Local HTML file check::

  docker run --rm -it -u $(id -u):$(id -g) -v "$PWD":/mnt ghcr.io/linkchecker/linkchecker:latest --verbose index.html

In addition to the rolling latest image, uniquely tagged images can also be found
on the `packages`_ page.

.. _packages: https://github.com/linkchecker/linkchecker/pkgs/container/linkchecker