check links in web documents or full websites
Find a file
Chris Mayo a2e379a595 Remove built-in GNOME and KDE proxy support
Only http_proxy was ever supported.

Requests uses urllib.request.getproxies().

Fedora 35 and Ubuntu 20.04 do set proxy environment variables when
settings are added through the GUI.

GNOME location of proxy settings is subject to change:
https://wiki.gnome.org/Projects/NetworkManager/Proxies
https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas/-/issues/27
2021-12-13 19:25:23 +00:00
.github Workflow to automatically add Python distribution files to the release 2021-12-09 19:31:28 +00:00
cgi-bin Use python3 for cgi-bin/lc.wsgi 2021-01-28 19:20:24 +00:00
config Correct documentation of CSV separator 2021-11-29 19:48:50 +00:00
doc Remove built-in GNOME and KDE proxy support 2021-12-13 19:25:23 +00:00
linkcheck Remove built-in GNOME and KDE proxy support 2021-12-13 19:25:23 +00:00
po Update application translation catalogs 2021-11-30 19:24:44 +00:00
scripts Add slack to the list of ignored schemes 2020-08-09 17:10:26 +01:00
tests Remove linkcheck.checker.proxysupport 2021-12-13 19:25:23 +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 Set release date from HEAD 2021-12-07 19:44:20 +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
linkchecker Make quiet/-q set application logging to warning 2021-11-29 19:48:50 +00:00
Makefile Stop using biplist 2020-10-12 19:55:46 +01:00
MANIFEST.in Fix check warning that MANIFEST.in is not compatible with Windows 2021-12-07 19:44:20 +00:00
pytest.ini Move some pytest options into pytest.ini 2019-10-21 17:42:29 +03:00
README.rst Reference manuals and mention GitHub Packages in README 2021-12-01 19:43:07 +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 Remove *.mo from ignore-bad-ideas 2021-12-07 19:44:20 +00:00
setup.py Remove built-in GNOME and KDE proxy support 2021-12-13 19:25:23 +00:00
tox.ini Merge pull request #571 from cjmayo/cchardet 2021-12-06 19:28:55 +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.6 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: doc/install.txt


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