Quickly and efficiently delete your entire tweet history with the help of your Twitter archive without worrying about the pointless 3200 tweet limit imposed by Twitter.

Overview

header-image

Twitter Nuke

Quickly and efficiently delete your entire tweet history with the help of your Twitter archive without worrying about the puny and pointless 3200 tweet limit imposed by Twitter.

About

The script uses multithreading to speed up the deletion process by simultaneously running multiple instances of the Twitter API. By utilising this modification the speed can be improved upto ~50-60 times the single threaded performance (~1 tweet per sec).

Features

  • Set the number of likes and retweets as threshold above which the tweets will not be deleted.
  • Set the batch size for threads
  • Your deleted tweets and skipped tweets will be outputted in corresponding files.

Usage

  • Download your Twitter data by following these steps.
  • Edit the script with your Twitter API tokens and your preferences.
  • Run it in your terminal using python3 deleter-script.py

(Note: Post September 2020, due to the high-profile Twitter attack of July 2020, the Twitter data might take anywhere from 24 hours to 4 days to be generated. Keep this in mind.)

Caution

This script will delete all of your tweets and the action cannot be reversed. The script DOES NOT ask for your confirmation before executing the delete command. Run this script only if you are absolutely sure about it. The creator is not responsible for any loss in data and all the liabilities are held by the person running this script.

Donate

Donate to the creator here -> Buy Me a Coffee

Other Credits

Photo by Brett Jordan on Unsplash.

Comments
  • 'charmap' codec can't decode js_file

    'charmap' codec can't decode js_file

    Hello! I got here from your Reddit's post

    I'm trying to take advantage of the great work you've done but it seems that there is an error processing the twitter.json file

    I've tried using different encoding options but code will crash later

    image

    The error I get: ----> 'charmap' codec can't decode byte 0x81 in position 7163: character maps to

    I wish I could fix the problem myself but I am new to Python and don't have much experience with json files and encoding

    Regards, Juan

    bug 
    opened by juanblasmdq 4
  • Various corrections

    Various corrections

    Aside from typos in README, corrected wrong js file name in script (at least in my archive it is tweets.js, not tweet.js) and output files for deleted and skipped tweets opened in append, instead of write, mode. Broken and unneeded requirement removed.

    opened by holmesrichards 2
  • Unmaintained and may not work

    Unmaintained and may not work

    This project seems to be unmaintained and out of the box did not work for me, including typos in the instructions as pointed out in other issues. I created a much simpler, albeit less robust, NodeJS script including step-by-step instructions for obtaining all keys/tokens, which you may find useful:

    https://github.com/wayne530/twitter-wipe

    documentation 
    opened by wayne530 2
  • ERROR: ---Read-only application cannot POST.

    ERROR: ---Read-only application cannot POST.

    Getting the following error when I run the script. I think everything else is setup correctly.

    I'm using Terminal on macOS Big Sur.

    Any ideas?

    Last login: Sat Feb 12 13:30:54 on ttys000
    [email protected] ~ % cd /Users/Ryan/Downloads/twitter                       
    [email protected] twitter % sudo python3 /Users/Ryan/Downloads/twitter/delete-script.py 
    Password:
    
    
    >> Processing your tweet.js file and converting it to a JSON.
    
    >> Processing tweet.js file
    
    >> Converting to processable JSON
    
    >> You have selected 18593 tweets to be deleted.
    >> You have selected 6 tweets to be deleted.
    
    >> Your choices for filters were: 
    >> Likes more than 10 and retweets more than 10.
    
    
        
        >> Deletion of tweets takes a long time due to the sluggish Twitter API. The script uses multithreading to delete threads faster. However, it might still take a few minutes to delete your entire history of tweets if it exceeds a couple of thousand tweets.
    Thread started for deletion. Thread #1
    Thread started for deletion. Thread #2
    Thread started for deletion. Thread #3
    Thread started for deletion. Thread #4
    Thread started for deletion. Thread #5
    Thread started for deletion. Thread #6
    Thread started for deletion. Thread #7
    Thread started for deletion. Thread #8
    Thread started for deletion. Thread #9
    Thread started for deletion. Thread #10
    Thread started for deletion. Thread #11
    Thread started for deletion. Thread #12
    Thread started for deletion. Thread #13
    Thread started for deletion. Thread #14
    Thread started for deletion. Thread #15
    Thread started for deletion. Thread #16
    Thread started for deletion. Thread #17
    Thread started for deletion. Thread #18
    Thread started for deletion. Thread #19
    Thread started for deletion. Thread #20
    Thread started for deletion. Thread #21
    Thread started for deletion. Thread #22
    Thread started for deletion. Thread #23
    Thread started for deletion. Thread #24
    Thread started for deletion. Thread #25
    Thread started for deletion. Thread #26
    Thread started for deletion. Thread #27
    Thread started for deletion. Thread #28
    Thread started for deletion. Thread #29
    Thread started for deletion. Thread #30
    Thread started for deletion. Thread #31
    Thread started for deletion. Thread #32
    Thread started for deletion. Thread #33
    Thread started for deletion. Thread #34
    Thread started for deletion. Thread #35
    Thread started for deletion. Thread #36
    Thread started for deletion. Thread #37
    ERROR: ---Read-only application cannot POST.189286287126175744
    ERROR: ---Read-only application cannot POST.219738329720172544
    ERROR: ---Read-only application cannot POST.231700154238001154
    ERROR: ---Read-only application cannot POST.248052328849080320
    ERROR: ---Read-only application cannot POST.1797644428
    ERROR: ---Read-only application cannot POST.212547389041545216
    ERROR: ---Read-only application cannot POST.271955996660883456
    ERROR: ---Read-only application cannot POST.205792151760678912
    Thread started for deletion. Thread #38
    --> Successfully deleted 18593 tweets.
    --> Successfully skipped 6 tweets from deletion.
    --> Number of threads used: 93 of batch size 500 each.
    
    
    --> Process finished in 7.888478755950928 seconds.
    ERROR: ---Read-only application cannot POST.200232491506872321
    ERROR: ---Read-only application cannot POST.256898477236310016
    ERROR: ---Read-only application cannot POST.194730566065725441
    ERROR: ---Read-only application cannot POST.296991465777807360
    ERROR: ---Read-only application cannot POST.264385288074297344
    ERROR: ---Read-only application cannot POST.154149420810764288
    ERROR: ---Read-only application cannot POST.288272285431906305
    ERROR: ---Read-only application cannot POST.347043531858272258
    ERROR: ---Read-only application cannot POST.486858789987958784
    ERROR: ---Read-only application cannot POST.162172524547940353
    ERROR: ---Read-only application cannot POST.841024024486510593
    ERROR: ---Read-only application cannot POST.370493537529241600
    
    opened by ryanhmcl 2
  • [ImgBot] Optimize images

    [ImgBot] Optimize images

    Beep boop. Your images are optimized!

    Your image file size has been reduced by 15% 🎉

    Details

    | File | Before | After | Percent reduction | |:--|:--|:--|:--| | /assets/twitter-nuke_01.png | 2,697.50kb | 2,291.57kb | 15.05% | | /assets/twitter-nuke_02.png | 58.34kb | 50.30kb | 13.79% | | | | | | | Total : | 2,755.84kb | 2,341.86kb | 15.02% |


    📝 docs | :octocat: repo | 🙋🏾 issues | 🏪 marketplace

    ~Imgbot - Part of Optimole family

    opened by imgbot[bot] 0
  • demjson broken and unneeded

    demjson broken and unneeded

    I got an error running pip3 install -r requirements.txt when it tried to install demjson. I removed that line from the requirements.txt file and everything worked; apparently the script does not really need demjson.

    opened by holmesrichards 0
  • List index out of range

    List index out of range

    After fixing a couple of problems I got the script to run and mostly work, but I did notice this error:

    Exception in thread Thread-31 (delete_tweets):
    Traceback (most recent call last):
    T - Deleted: 856534486653308932
      File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner
    T - Deleted: 826123225163845632
    T - Deleted: 464801561127178240
    T - Deleted: 1100834889958608896
    T - Deleted: 1018653649478832128
    T - Deleted: 769551237721251840
    T - Deleted: 883419519833788417
    T - Deleted: 27517911400718336
    T - Deleted: 4160500189
        self.run()
      File "/usr/lib/python3.10/threading.py", line 953, in run
    T - Deleted: 949445145539334145
    T - Deleted: 964967785540603905
    T - Deleted: 930911513614913536
    T - Deleted: 1141781722209501185
    T - Deleted: 906531239125032960
        self._target(*self._args, **self._kwargs)
    T - Deleted: 1071462771001319425
    T - Deleted: 1241758022571044865
      File "/home/rsholmes/Downloads/twitter-nuke/src/delete-script-rsh.py", line 99, in delete_tweets
    T - Deleted: 142232664936689665
    T - Deleted: 233966575911305216
        api.destroy_status(int(tweets_to_delete[i]))
    IndexError: list index out of range
    
    opened by holmesrichards 0
  • JSONDecodeError

    JSONDecodeError

    Hi im having an error, the following is what i got after running the script :

    >> Processing your tweet.js file and converting it to a JSON.
    
    >> Processing tweet.js file
    
    >> Converting to processable JSON
    Traceback (most recent call last):
      File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2032.0_x64__qbz5n2kfra8p0\lib\runpy.py", line 188, in _run_module_as_main
        mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
      File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2032.0_x64__qbz5n2kfra8p0\lib\runpy.py", line 111, in _get_module_details
        import(pkg_name)
      File "C:\Users\risha\Desktop\fx\scriptt.py", line 132, in <module>
        parse_json(JSON_FILE, LIKES, RETWEETS)
      File "C:\Users\risha\Desktop\fx\scriptt.py", line 68, in parse_json
        data = json.load(jfd)
      File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2032.0_x64qbz5n2kfra8p0\lib\json\__init.py", line 293, in load
        return loads(fp.read(),
      File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2032.0_x64qbz5n2kfra8p0\lib\json\__init.py", line 346, in loads
        return _default_decoder.decode(s)
      File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2032.0_x64__qbz5n2kfra8p0\lib\json\decoder.py", line 337, in decode
        obj, end = self.raw_decode(s, idx=_w(s, 0).end())
      File "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.9_3.9.2032.0_x64__qbz5n2kfra8p0\lib\json\decoder.py", line 353, in raw_decode
        obj, end = self.scan_once(s, idx)
    json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 2 column 3 (char 6)
    
    opened by rishrishrish 5
Releases(0.0.2-alpha)
Owner
Mayur Bhoi
avoiding deprecation
Mayur Bhoi
Hazard-Nuker - Hazard Nuker With Python

🌟 Since hazard is free, donations are really appriciate and keeps the developme

†† 9 Oct 26, 2022
Make your Pass (sanitaire) Fun Again

Make Your Pass (Sanitaire) Fun Again Customize your Pass Sanitaire (French name for EU digital Covide19 Certificate) with colors and images, thus make

101 Dec 01, 2022
Upload on Doodstream by Url, File and also by direct forward post from other channel...

Upload on Doodstream by Url, File and also by direct forward post from other channel...

Pʀᴇᴅᴀᴛᴏʀ 8 Aug 10, 2022
Python client for using Prefect Cloud with Saturn Cloud

prefect-saturn prefect-saturn is a Python package that makes it easy to run Prefect Cloud flows on a Dask cluster with Saturn Cloud. For a detailed tu

Saturn Cloud 15 Dec 07, 2022
A Fork of Gitlab's Permifrost tool for managing Snowflake Permissions

permifrost-fork This is a fork of the GitLab permifrost project. As the GitLab team is not currently maintaining the project, we've taken on maintenac

Hightouch 7 Oct 13, 2021
Connects to a local SenseCap M1 Helium Hotspot and pulls API Data.

sensecap_api_checker_HELIUM Connects to a local SenseCap M1 Helium Hotspot and pulls API Data.

Lorentz Factr 1 Nov 03, 2021
Python wrappers for INHECO ODTC and SCILA libraries by INHECO GmbH.

Python wrappers for INHECO ODTC and SCILA libraries by INHECO GmbH.

1 Feb 09, 2022
Example app to be deployed to AWS as an API Gateway / Lambda Stack

Disclaimer I won't answer issues or emails regarding the project anymore. The project is old and not maintained anymore. I'm not sure if it still work

Ben 123 Jan 01, 2023
RP2 is a privacy-focused, free, open-source US cryptocurrency tax calculator

Privacy-focused, free, open-source cryptocurrency US tax calculator, up to date for 2021: it handles multiple coins/exchanges and computes long/short-term capital gains, cost bases, in/out lot relati

eprbell 123 Jan 04, 2023
RichWatch is wrapper around AWS Cloud Watch to display beautiful logs with help of Python library Rich.

RichWatch is TUI (Textual User Interface) for AWS Cloud Watch. It formats and pretty prints Cloud Watch's logs so they are much more readable. Because

21 Jul 25, 2022
Simple yet efficient tool used to check and sort tokens in terms of there validation.

Discord Token Checker Simple yet efficient tool used to check and sort tokens in terms of there validation.When the program is done,go to the "output"

Robotnik 15 Dec 27, 2022
Widevine CDM API

wvproxy Widevine CDM API Setup Install Python 3.6 or newer and Poetry Install Python package dependencies using poetry install Activate the virtual en

24 Dec 09, 2022
Syrax Check User Bot Discord.py

Syrax-Check-User-Bot-Discord.py Guida Italiana il bot nasce con lo scopo di poter caricare il proprio nome utente,tag e foto profilo al forum tramite

Pippoide 0 Feb 04, 2022
A wrapper for slurm especially on Taiwania2 (HPC CLI)A wrapper for slurm especially on Taiwania2 (HPC CLI)

TWCC-slurm-wrapper A wrapper for slurm especially on Taiwania2 (HPC CLI). For Taiwania2 (HPC CLI) usage, please refer to here. (中文) How to Install? gi

Chi-Liang, Liu 5 Oct 07, 2022
Wanna play on the Overwatch NA servers?

OverwatchRegionSwapper-NA- Wanna play on the Overwatch NA servers? Use at you own risk. LIST OF IPs EU Netherlands: From: 5.42.168.0 to: 5.42.175.255

1 Jun 08, 2022
(unofficial) Googletrans: Free and Unlimited Google translate API for Python. Translates totally free of charge.

Googletrans Googletrans is a free and unlimited python library that implemented Google Translate API. This uses the Google Translate Ajax API to make

Suhun Han 3.2k Jan 04, 2023
AminoLab Library For AminoApps using aminoapps.com/api

AminoLab AminoLab Api For AminoApps using aminoapps.com/api Installing pip install AminoLab Example #Login import AminoLab client = AminoLab.Client()

10 Sep 26, 2022
User-Bot for reporting russian propaganda channels

Юзер-Бот, що автоматизує репортування Телеграм каналів пропагандистів Цей Телеграм Юзер-Бот використовується для автоматизації репорту пропагандистьск

58 Nov 07, 2022
A Discord/Xenforo bot!

telathbot A Discord/Xenforo bot! Pre-requisites pyenv (via installer) poetry Docker (with Go version of docker compose enabled) Local development Crea

Telath 4 Mar 09, 2022
Accurately dump Commodore 64 tapes

TrueTape64 A cheap, easy to build adapter to interface a Commodore 1530 (C2N) Datasette to your PC to dump and preserve your aging Commodore 64 softwa

francesco 38 Dec 03, 2022