Skip to content

Instantly share code, notes, and snippets.

@LittleFireflies
Created May 4, 2023 04:46
Show Gist options
  • Save LittleFireflies/13ce9b967de775fd3ea97530fc0ae620 to your computer and use it in GitHub Desktop.
Save LittleFireflies/13ce9b967de775fd3ea97530fc0ae620 to your computer and use it in GitHub Desktop.
Twitter reply roulette
import csv
import random
import sys
input_file = sys.argv[1]
total_winners = sys.argv[2]
with open(input_file) as file:
csv_reader = csv.reader(file)
data = list(csv_reader)
row_count = len(data)
print('Total data: {}'.format(row_count))
winner_index = []
print('Selamat untuk kak:')
while len(winner_index) < int(total_winners):
random_number = random.randint(1, row_count) - 1
if (random_number != 0 and random_number not in winner_index):
winner_index.append(random_number)
print(data[random_number])
import csv
import tweepy
import ssl
from config import CONSUMER_KEY, CONSUMER_SECRET, ACCESS_TOKEN, ACCESS_TOKEN_SECRET
consumer_key = CONSUMER_KEY
consumer_secret = CONSUMER_SECRET
access_token = ACCESS_TOKEN
access_token_secret = ACCESS_TOKEN_SECRET
# Authentication with Twitter
auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
api = tweepy.API(auth)
name = 'nama_akun_twitter'
tweet_id = 'id_tweet'
replies=[]
for tweet in tweepy.Cursor(api.search,q='to:'+name, result_type='recent', timeout=999999).items(1000):
if hasattr(tweet, 'in_reply_to_status_id_str'):
if (tweet.in_reply_to_status_id_str==tweet_id):
replies.append(tweet)
with open('nama_file.csv', 'w') as f:
csv_writer = csv.DictWriter(f, fieldnames=('user', 'text'))
csv_writer.writeheader()
for tweet in replies:
row = {'user': tweet.user.screen_name, 'text': tweet.text.replace('\n', ' ')}
csv_writer.writerow(row)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment