Faster implementation of dm loading due to a call to lookup_users instead to get_user

This commit is contained in:
2021-01-27 10:36:44 -06:00
parent 890359f8c7
commit c95a2feb5e
3 changed files with 19 additions and 2 deletions

View File

@@ -430,4 +430,16 @@ class Session(base.baseSession):
return self.db["users"][i].id_str
user = utils.if_user_exists(self.twitter, screen_name)
self.db["users"][user.id_str] = user
return user.id_str
return user.id_str
def save_users(self, user_ids):
""" Adds all new users to the users database. """
log.debug("Received %d user IDS to be added in the database." % (len(user_ids)))
users_to_retrieve = [user_id for user_id in user_ids if user_id not in self.db["users"]]
# Remove duplicates
users_to_retrieve = list(dict.fromkeys(users_to_retrieve))
log.debug("TWBlue will get %d new users from Twitter." % (len(users_to_retrieve)))
users = self.twitter.lookup_users(user_ids=users_to_retrieve, tweet_mode="extended")
for user in users:
self.db["users"][user.id_str] = user
log.debug("Added %d new users" % (len(users)))