Comment j'ai supprimé tous mes anciens tweets en utilisant Python

Je n'aime pas l'idée de laisser trop de tweets «historiques» avec toutes les choses stupides que je tweet.

J'ai donc décidé de tous les supprimer.

Pour ce faire, j'ai demandé une archive de tous mes tweets sur Twitter, à partir des paramètres de Twitter.

La génération de l'archive peut prendre des jours. Mes archives datent de 2015, même si j'utilise Twitter depuis 2007. Peut-être ai-je déjà supprimé mes précédents tweets en 2015, je ne m'en souviens plus.

J'ai récupéré l'archive, je l'ai téléchargée, puis j'ai déballé le dossier et j'ai couru

python -m venv .venv
source .venv/bin/activate.fish
python -m pip install delete-tweets

Ensuite, j'ai créé les variables d'environnement pour définir les clés d'une application Twitter, nécessaires pour exécuter l'ensemble du processus, comme décrit surhttps://github.com/koenrh/delete-tweets:

export TWITTER_CONSUMER_KEY="your_consumer_key"
export TWITTER_CONSUMER_SECRET="your_consumer_secret"
export TWITTER_ACCESS_TOKEN="your_access_token"
export TWITTER_ACCESS_TOKEN_SECRET="your_access_token_secret"

I used the consumer and access keys of a Twitter app I already had (Twitter now has a process to create new apps, so you must be reviewed and approved to do the same if you don’t have an app already there).

Tip: when you define environment variables in this way, they are recorded by default in the shell history. To avoid that with the Fish shell, run a new shell with fish --private to start the shell in private mode.

Then I ran:

delete-tweets --until 2021-01-01 tweet.js

to delete all the tweets I tweeted before 2021. It took a little while, but it worked.

It took way more to get the archive from Twitter than to delete the tweets, but in the end I got a clean slate.