Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Pylint JSON report to HTML

Project description

A pylint JSON report file to HTML: pylint is used to generate a JSON report, and this tool will transform this report into an HTML document:

usage: pylint-json2html [-h] [-o FILENAME] [-f FORMAT] [-t FILENAME] [FILENAME]

Transform Pylint JSON report to HTML

positional arguments:
FILENAME              Pylint JSON report input file (or stdin)

optional arguments:
-h, --help            show this help message and exit
-o FILENAME, --output FILENAME Pylint HTML report output file (or stdout)
-f FORMAT, --input-format FORMAT Pylint JSON Report input type (json or jsonextended)
-t FILENAME, --template FILENAME Custom Template to use to generate report


Since its 1.7 version, Pylint does not provide an HTML output format. The release notes say that:

It was lately a second class citizen in Pylint, being mostly neglected. Since we now have the JSON reporter, it can be used as a basis for building more prettier HTML reports than what Pylint can currently generate. This is part of the effort of removing cruft from Pylint, by removing less used features.

And I agree with that statements. Few people use the HTML reports, and pylint is getting old. Its core features are complex and they require a lot of times and efforts - and I am thankful for that software to exist in the first place!

So here it is: a plugin to fulfill my own needs. I share it as open-source because why not?


To install this tool, use pip:

(venv) $ pip install pylint-json2html

You can always download the sources from the github repository, and use the file to install or develop, but I would not recommend that unless you plan to contribute to this small project of mine.


My favorite way of using pylint and pylint-json2html is this one:

(venv) $ pylint my_package | pylint-json2html -o pylint.html

Provided that you configure your Pylint config file with:


But you can generate first a JSON file, then use pylint-json2html to read it:

(venv) $ pylint your_package > pylint.json
(venv) $ pylint-json2html -o pylint.html pylint.json

You can also redirect pylint-json2html’s stdout:

(venv) $ pylint-json2html pylint.json > pylint.html

Extended Report

Actually, I lied about my favorite way, it is this one:

(venv) $ pylint my_package | pylint-json2html -f jsonextended -o pylint.html

With this Pylint configuration:



The pylint_json2html is a Pylint plugin that adds a new output format: jsonextended. By default, the json format contains only a list of messages, and this new format contains also metrics, such the number of analysed statements, or the list of dependencies.

The configuration above can be tested using the command line instead:

(venv) $ pylint --load-plugins=pylint_json2html --output-format=jsonextended your_package > pylint.json

Then, you will be able to use the JSON extended report to generate an HTML report:

(venv) $ pylint-json2html -f jsonextended -o pylint.html pylint.json

And voilà!

Project details

Release history Release notifications

Download files

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

Files for pylint-json2html-v2, version 0.2.2
Filename, size File type Python version Upload date Hashes
Filename, size pylint_json2html_v2-0.2.2-py3-none-any.whl (13.0 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size pylint-json2html-v2-0.2.2.tar.gz (11.6 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page