삭제된 트윗만 하는 시스템을 만들어 봤어요.
이거 뭐야?
파이톤에서 Tweepy를 사용하여 타임라인을 감시하고 삭제된 트위터의 표준 출력을 감시하는 프로그램
출처
Politwoops(정치인이 삭제한 트위터 아카이브 사이트)
코드
Python 3에서 Tweepy를 사용합니다.pip install tweepy
후 설치가 가능합니다.
CONSUMER_KEY 같은 건 본인이 준비한 걸 입력하세요.
delcheck.py
# coding: UTF-8
import tweepy
from datetime import timedelta
import json
CONSUMER_KEY = ""
CONSUMER_SECRET = ""
ACCESS_TOKEN = ""
ACCESS_TOKEN_SECRET = ""
my_db = {}
def get_oauth():
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
return auth
def pprint(dict_data):
for k, v in dict_data.items():
print(k, v)
class Listener(tweepy.StreamListener):
def on_error(self, status_code):
print("Error: " + str(status_code))
def on_data(self, data):
obj = json.loads(data, encoding="UTF-8")
if "delete" in obj:
tweet_id = obj.get("delete").get("status").get("id")
print("deleted!")
if tweet_id in my_db:
print(my_db[tweet_id])
else:
print("-")
elif "text" in obj:
my_db[obj.get("id")] = obj.get("user").get("screen_name") + ": " + obj.get("text")
def on_timeout(self):
print("Timeout...")
if __name__ == "__main__":
auth = get_oauth()
listener = Listener()
stream = tweepy.Stream(auth, listener)
stream.userstream()
사족
삭제 알림데이터로 흐르다.시작할 때부터 사용자의 타임라인 데이터를 저장하고 삭제된 데이터에 저장된 데이터가 있으면 표준 출력을 합니다.올바른 DB my 를 사용하지 않음db (사전 형식 대상) 에 타임라인에서 온 데이터를 저장했습니다. (트위터 본문에만 한정됩니다.)
하루를 이동해 보니 사실 모두 트위터를 삭제했다.
추기 (2017년 10월 24일)
이런 서비스는 트위터의 규정을 위반했다.
유사한 서비스는 트위터에 욕먹을 수 있으니 주의해라.
선전하다.
@redshoga 참조
Reference
이 문제에 관하여(삭제된 트윗만 하는 시스템을 만들어 봤어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/redshoga/items/220f11fbe7bd4f8c61f1
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
# coding: UTF-8
import tweepy
from datetime import timedelta
import json
CONSUMER_KEY = ""
CONSUMER_SECRET = ""
ACCESS_TOKEN = ""
ACCESS_TOKEN_SECRET = ""
my_db = {}
def get_oauth():
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)
return auth
def pprint(dict_data):
for k, v in dict_data.items():
print(k, v)
class Listener(tweepy.StreamListener):
def on_error(self, status_code):
print("Error: " + str(status_code))
def on_data(self, data):
obj = json.loads(data, encoding="UTF-8")
if "delete" in obj:
tweet_id = obj.get("delete").get("status").get("id")
print("deleted!")
if tweet_id in my_db:
print(my_db[tweet_id])
else:
print("-")
elif "text" in obj:
my_db[obj.get("id")] = obj.get("user").get("screen_name") + ": " + obj.get("text")
def on_timeout(self):
print("Timeout...")
if __name__ == "__main__":
auth = get_oauth()
listener = Listener()
stream = tweepy.Stream(auth, listener)
stream.userstream()
삭제 알림데이터로 흐르다.시작할 때부터 사용자의 타임라인 데이터를 저장하고 삭제된 데이터에 저장된 데이터가 있으면 표준 출력을 합니다.올바른 DB my 를 사용하지 않음db (사전 형식 대상) 에 타임라인에서 온 데이터를 저장했습니다. (트위터 본문에만 한정됩니다.)
하루를 이동해 보니 사실 모두 트위터를 삭제했다.
추기 (2017년 10월 24일)
이런 서비스는 트위터의 규정을 위반했다.
유사한 서비스는 트위터에 욕먹을 수 있으니 주의해라.
선전하다.
@redshoga 참조
Reference
이 문제에 관하여(삭제된 트윗만 하는 시스템을 만들어 봤어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/redshoga/items/220f11fbe7bd4f8c61f1
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
@redshoga 참조
Reference
이 문제에 관하여(삭제된 트윗만 하는 시스템을 만들어 봤어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/redshoga/items/220f11fbe7bd4f8c61f1텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)