Discord Dumper

CI : Docs CI : Lint CI : Tests PyPI : discord-dumper Python : versions Discord License : MIT

Description

Retrieve all your discord information using a HAR file.

Documentation

Documentation is available on https://dashstrom.github.io/discord-dumper

Installation

You can install discord-dumper using pipx from PyPI

pip install pipx
pipx ensurepath
pipx install discord-dumper

How to get an HAR File ?

  1. Go on your favorite browser

  2. Press F12

  3. Go to Network tab

  4. Check Disable cache

  5. Check Preserve log

  6. Go on discord.com and where you want to collect data

  7. Right-click on an event in the Network tab

  8. Save all as HAR with content

Usage

discord-dumper --help
discord-dumper discord.com.har --fetch

Dump content

  • events.json: All events sended and receive by your applications

  • images: All images downloaded from cdn.discordapp.com

  • guilds: Partial guild content

  • private_channels: Partial private channels

  • connected_accounts: All your connected accounts

  • user: Some users

Development

Contributing

Contributions are very welcome. Tests can be run with poe check, please ensure the coverage at least stays the same before you submit a pull request.

Setup

You need to install Poetry and Git for work with this project.

git clone https://github.com/Dashstrom/discord-dumper
cd discord-dumper
poetry install --all-extras
poetry run poe setup
poetry shell

Poe

Poe is available for help you to run tasks.

test           Run test suite.
lint           Run linters: ruff linter, ruff formatter and mypy.
format         Run linters in fix mode.
check          Run all checks: lint, test and docs.
cov            Run coverage for generate report and html.
open-cov       Open html coverage report in webbrowser.
docs           Build documentation.
open-docs      Open documentation in webbrowser.
setup          Setup pre-commit.
pre-commit     Run pre-commit.
clean          Clean cache files

Skip commit verification

If the linting is not successful, you can’t commit. For forcing the commit you can use the next command :

git commit --no-verify -m 'MESSAGE'

Commit with commitizen

To respect commit conventions, this repository uses Commitizen.

cz c

How to add dependency

poetry add 'PACKAGE'

Ignore illegitimate warnings

To ignore illegitimate warnings you can add :

  • # noqa: ERROR_CODE on the same line for ruff.

  • # type: ignore[ERROR_CODE] on the same line for mypy.

  • # pragma: no cover on the same line to ignore line for coverage.

  • # doctest: +SKIP on the same line for doctest.

Uninstall

pipx uninstall discord-dumper

License

This work is licensed under MIT.

Contents

Index