signal2html: Convert Signal backups to pretty HTML
This is a Python script to convert a backup of Signal messages to pretty HTML:
Why?
My phone was getting full and I wanted to preserve my Signal messages in a nice way.
How?
-
Install this package using pip:
$ pip install signal2html -
Next, clone and compile signalbackup-tools as follows:
$ git clone https://github.com/bepaald/signalbackup-tools $ cd signalbackup-tools $ bash BUILDSCRIPT.shThis should give you a
signalbackup-toolsexecutable script. -
Create an encrypted backup of your Signal messages in the app (Settings -> Chats and Media -> Create backup), and transfer this to your computer. Make sure to record the encryption password.
-
Unpack your encrypted backup using
signalbackup-toolsas follows:$ mkdir signal-backup/ $ signalbackup-tools signal-YYYY-MM-DD-HH-MM-SS.backup <PASS> --output signal_backup/where you replace
signal-YYYY-MM-DD-HH-MM-SS.backupwith the actual filename of your Signal backup and<PASS>with the 30-digit encryption password (without spaces). -
Now, run
signal2htmlon the backup directory, as follows:$ signal2html -i signal_backup/ -o signal_html/This will create a HTML page for each of the message threads in the
signal_htmldirectory, which you can subsequently open in your browser.
Notes
This is a hastily-written script that has only been tested on a few Signal database versions. I hope it works on other backup versions as well, but if you encounter any issues please submit a pull request.
See the LICENSE file for licensing details and copyright.
Please be aware that Signal messages are encrypted for a reason, and your contacts may use it specifically because it provides significant privacy. By exporting and decrypting your messages, you should take responsibility for maintaining this same level of privacy (for instance by only storing the plaintext messages on encypted volumes/drives).
Originally written by Gertjan van den Burg. See the contributors file for a full list of all contributors.
Metadata
Release files for signal2html 0.2.11
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| signal2html-0.2.11.tar.gz | 26.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| signal2html-0.2.11-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 53.7 kB
Release files / signal2html-0.2.11.tar.gz
| Download URL | signal2html-0.2.11.tar.gz |
|---|---|
| Size | 26.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
59ef0250f26c83cd7bf1f5097d26c7bc61f4e142258e05914e4db3e83bb06959
|
|
BLAKE2b-256 checksum How to use checksums |
07d37956793c11d01103dd2a50f21c15180891b4270ca10d0ca81c4dc41cc306
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.7.1 importlib_metadata/5.0.0 pkginfo/1.8.2 requests/2.28.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.8
|
Release files / signal2html-0.2.11-py3-none-any.whl
| Download URL | signal2html-0.2.11-py3-none-any.whl |
|---|---|
| Size | 27.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a6259b06950536cbc0ef8e275dbc8b0a651601166f8f2743f5820426cb49a3bd
|
|
BLAKE2b-256 checksum How to use checksums |
fa82c349c9461774bea7422864adea72953ca13c62811630aad233ca2c07df18
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.7.1 importlib_metadata/5.0.0 pkginfo/1.8.2 requests/2.28.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.8
|
Security for signal2html 0.2.11
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.