|# -*- coding: utf-8 -*-|
|This script will delete all of the tweets in the specified account.|
|You may need to hit the "more" button on the bottom of your twitter profile|
|page every now and then as the script runs, this is due to a bug in twitter.|
|You will need to get a consumer key and consumer secret token to use this|
|script, you can do so by registering a twitter application at https://dev.twitter.com/apps|
|@requirements: Python 2.5+, Tweepy (http://pypi.python.org/pypi/tweepy/1.7.1)|
|@author: Dave Jeffery|
|CONSUMER_KEY = 'XXX'|
|CONSUMER_SECRET = 'XXX'|
|def oauth_login(consumer_key, consumer_secret):|
|"""Authenticate with twitter using OAuth"""|
|auth = tweepy.OAuthHandler(consumer_key, consumer_secret)|
|auth_url = auth.get_authorization_url()|
|verify_code = raw_input("Authenticate at %s and then enter you verification code here > " % auth_url)|
|print "You are about to Delete all tweets from the account @%s." % api.verify_credentials().screen_name|
|print "Does this sound ok? There is no undo! Type yes to carry out this action."|
|do_delete = raw_input("> ")|
|if do_delete.lower() == 'yes':|
|for status in tweepy.Cursor(api.user_timeline).items():|
|print "Deleted:", status.id|
|print "Failed to delete:", status.id|
|if __name__ == "__main__":|
|api = oauth_login(CONSUMER_KEY, CONSUMER_SECRET)|
|print "Authenticated as: %s" % api.me().screen_name|
Nice script! I'm new to the twitter API. I deleted all tweets possible with this script, but that account still shows 8,5k tweets and all the tweets containing media (photos and videos) are available. The timeline of that account does not show up these tweets, that's why the method api,user_timeline does not retreive them. I'm not seeing anything in the documentation that helps me to get these tweets, maybe you have an idea?
I've made some changes on the script https://gist.github.com/JohnTroony/489ccc8e476b9377ae47
This can delete 1-2 tweets per second.
I forked this and made a much faster version of this using threads. It can delete upto 30-50 tweets per second.
I've tried this, and the forked version of this, and neither deletes any of my tweets. At least this version tells me that it cannot for about 28 instances, each followed by an 18-digit number, each beginning with 80xxxxxxxxxxxxxxxx. Any idea what's wrong and what to do to correct it?
For those who want to delete older tweets, not available though the API, the following script uses tweet ids from a previously downloaded twitter archive : https://gist.github.com/flesueur/bcb2d9185b64c5191915d860ad19f23f
Here's a much more simple and easy way to delete tweets
Download your tweet archive. Take the
run script. nuke your tweets.
set the number of days to 0 in my repo. after you got your auth set up just run it and you'll be good (not for likes though, but see my readme for that).