6
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Pythonでツイートを全部消す

Last updated at Posted at 2019-06-11

黒歴史クリーナー の全ツイート削除機能の調子が悪い(全ツイートダウンロードファイルのアップロードが失敗する)ので、python で全ツイートを消す方法をメモする。python でダイレクトメッセージ出来るものとする。

  1. 全ツイート履歴 をダウンロードする
  2. ダウンロードしたzipファイルを展開してtweet.js を取り出す
  3. tweet.js の冒頭の window.YTD.tweet.part0 = を削除する
  4. 以下のpython スクリプトを実行する
import twitter
import json

api = twitter.Api(
    consumer_key='適切に置き換える',
    consumer_secret='適切に置き換える',
    access_token_key='適切に置き換える',
    access_token_secret='適切に置き換える',
    sleep_on_rate_limit=False
)

with open('tweet.js', encoding='utf-8', mode='r') as f:
    tj=json.load(f)
    for tweet0 in tj:
        tweet = tweet0['tweet']
        print(tweet['id'])
        try:
            api.DestroyStatus(tweet['id'])
        except Exception as e:
            print(e.args)

DestroyStatus で消すツイートがリツイートで元ツイートが凍結や削除されている場合にエラーが起きるからtry-exceptで例外処理を行わないと途中で止まります。それ以外は以下とやってることは同じ

参考文献

6
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?