如何通过TwitterApi获得暂停用户或删除用户的差异



我想得到哪个用户被挂起,哪个用户被删除的记录,有什么方法可以得到吗?

from TwitterAPI import TwitterAPI
api = TwitterAPI(consumer_key, consumer_secret, auth_type='oAuth2')
usersfiles=['',''] #LIST of users
for user in usersfiles:
print(user,type(user)) #api.request('users/show', users/lookup
r = api.request('users/show', {'screen_name':user})
print(r.json())

而错误是

{'errors': [{'code': 50, 'message': 'User not found.'}]}

但是如果我使用

r = api.request('users/lookup', {'screen_name':user})

则错误为

{'errors': [{'code': 17, 'message': 'No user matches for specified terms.'}]}

此外,有没有任何有效的方法来执行任务,因为我有大约40万用户

供参考:https://twitter.com/Harrison5l5po挂起https://twitter.com/FourthLongRadio不存在

检查挂起用户的挂起响应代码,错误代码为63。

有关响应代码的完整列表,请访问

https://developer.twitter.com/ja/docs/basics/response-codes

编辑

如果您有大用户,请选择批处理合规性。快速入门指南:

https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/quick-start

https://developer.twitter.com/en/docs/twitter-api/compliance/batch-compliance/api-reference/post-compliance-jobs

用于创建作业的端点url

https://api.twitter.com/2/compliance/jobs

推特的回复,每行每id

{"id":"1263926741774581761","action":"delete","created_at":"2019-10-29T17:02:47.000Z","redacted_at":"2020-07-29T17:02:47.000Z","reason":"protected"}
{"id":"1265324480517361669","action":"delete","created_at":"2019-10-29T17:02:47.000Z","redacted_at":"2020-07-29T17:02:47.000Z","reason":"suspended"}

您可以在每行末尾检查原因(已删除、已保护、已挂起(。

并删除推文或拥有这些ID的用户以保持合规性。

您得到的用户未找到,因为您传递的是twitterurl,而不是用户名

现在,如果你只有url,那么你可以使用python正则表达式从中提取用户名

试试这个:

for user in usersfiles:
print(user) #api.request('users/show', users/lookup
username = re.search("w+$", user).group()
r = api.request('users/show', {'screen_name':username})
print(r.json())

它应该很好用!

最新更新