Twitter リストに追加したい Twitter スクリーンネームは約 1,700 あります。Twitter ではリストあたりのユーザー数が 500 に制限されているため、4 つの Twitter リストが必要です。
Twitter gem を使用しています。これが私が思いついたものです(偽の値):
client = Twitter::Client.new({ oauth_token: access_token, oauth_token_secret: access_secret })
all_twitter_accounts = ['screen_name_1', 'screen_name_2', '...', 'screen_name_1700']
list_1_id = 12
list_2_id = 34
list_3_id = 56
list_4_id = 78
client.list_add_members(list_1_id, all_twitter_accounts[0...499])
client.list_add_members(list_2_id, all_twitter_accounts[500...999])
client.list_add_members(list_3_id, all_twitter_accounts[1000...1499])
client.list_add_members(list_4_id, all_twitter_accounts[1500...1999])
ただし、このアプローチには 2 つの問題があります。
all_twitter_accounts
配列には、存在しないスクリーン名が含まれています。list_add_members
それらをスキップするだけですが、リストが500までいっぱいにならないことを意味します。したがってall_twitter_accounts
、現在のリストが実際に500の制限に達したときに、最初にサニタイズするか、次のリストへの切り替えを自動化する方法が必要です。Twitter APIには多少のバグがあるようです。言及された回避策が機能していません。
とにかくこれを機能させるには?これを行う必要があるのは一度だけなので、他の解決策も大歓迎です。