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

Parse Dota 2 text patches to html format.

Project description

Platform Status
GitHub Release Tag License Issues PR
PyPI PVersion PLicense Version Wheel Status
Health CI docs CIssues Coverage codecov

dotapatch is a software which aims the automation of formatting simple text changelog into clear html changelog.

Check the Gameplay Update 7.18. This is the latest patch parsed using dotapatch.

Read the documentation at Read the Docs.


Installing dotapatch

Install dotapatch using pip:

$ pip install dotapatch
Collecting dotapatch
Successfully installed dotapatch-2.4
$ dotapatch
usage: dotapatch [-h] [-t template_file] [-u] [-V] [-d] [-s] [-q]
                 [changelog_file [changelog_file ...]]


If you get an OSError, run pip install --user dotapatch instead.

Gathering a new changelog

  1. Go to dota2 news page and locate the latest patch.
  2. Copy and save it as a file.
* Necronomicon: Mana Break damage from 60 to 50%
* Nullifier: Cooldown reduced from 14 to 13
* Nullifier: Manacost reduced from 100 to 75

* Alchemist: Unstable Concoction damage increased from 150/220/290/360 to 160/240/320/400
* Bane: Enfeeble duration reduced from 20 to 14/16/18/20
* Bane: Brain Sap damage rescaled from 90/160/230/300 to 75/150/225/300


The content must start with the patch name 7.07d: followed by a separator ==.

Running dotapatch

Head over to the folder where you saved the changelog file and run dotapatch:

$ cd changelogs
$ dotapatch 706f
INFO Parsing 7.06f
INFO HTML saved at /home/arthurazs/changelogs/706f.html
INFO 7.06f conversion went smoothly.


If the HTML page shows some of the heroes/items as [[hero_name]] instead of the hero/item’s picture, run the following:

$ dotapatch --update-data
INFO Downloading itemdata from dota2's heropediadata
INFO Updated itemdata saved successfully
INFO Downloading herodata from dota2's heropediadata
INFO Updated herodata saved successfully

This will require internet connection and may take a while but it will ensure that the HeropediaData gets up-to-date.

Task List


Take a time to read our Code of Conduct. Any unacceptable behavior shall be reported by contacting the project team at

  • Do you have any feedback, questions or ideias?
  • Do you want to report a bug?
  • Would you like to fix a bug or implement a feature?

First of all, thank you! Please, read our Contributing Guidelines for details.

This project is licensed under the MIT License.

Project details

Download files

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

Files for dotapatch, version 2.4.4
Filename, size File type Python version Upload date Hashes
Filename, size dotapatch-2.4.4-py2.py3-none-any.whl (59.7 kB) File type Wheel Python version py2.py3 Upload date Hashes View hashes
Filename, size dotapatch-2.4.4.tar.gz (54.7 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