之前就一直很想整理那個亂亂的 Twitter 帳號,苦無方法一次可以把全部以往訊息刪除的工具!
因為以前都亂連動一些有的沒的社群網路,整個舊有點髒髒,上網搜尋到幾個輔助網站也沒啥鳥用!剛好看到這位 Dave Jeffery 寫的小巧 Python Script 來達成任務
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# -*- 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 | |
""" | |
import tweepy | |
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) | |
auth.get_access_token(verify_code) | |
return tweepy.API(auth) | |
def batch_delete(api): | |
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(): | |
try: | |
api.destroy_status(status.id) | |
print "Deleted:", status.id | |
except: | |
print "Failed to delete:", status.id | |
if __name__ == "__main__": | |
api = oauth_login(CONSUMER_KEY, CONSUMER_SECRET) | |
print "Authenticated as: %s" % api.me().screen_name | |
batch_delete(api) |
事前準備
- Twitter App 你可以到這邊申請
- Python 2.5+
- Tweepy
sudo pip install tweepy
- Oauthlib
sudo pip oauthlib
- 上面那段 Script
git clone https://gist.github.com/113241.git
動手開幹
接下來把 Script 中的 CONSUMER_KEY
與 CONSUMER_SECRET
換成你剛剛申請 Twitter APP 的。然後執行 python delete_all_tweets.py
他就會出現提示Authenticate at XXX(你的帳號) and then enter you verification code here >
後面會接 oauth 的網址,點下去按授權會拿到一組 verify code,貼上來按 Enter
接著他會確認你是否真的要刪除,輸入 yes
(大小寫沒差)。之後就會跳出
Deleted: XXX |
等待他執行完畢後,你的帳號就乾乾淨淨囉!