mirror of
				https://github.com/MCV-Software/TWBlue.git
				synced 2025-11-03 21:37:05 +00:00 
			
		
		
		
	Modify utils so those will take into account that entities might be not present in tweet objects
This commit is contained in:
		@@ -27,22 +27,16 @@ def find_urls (tweet):
 | 
				
			|||||||
    if hasattr(tweet, "message_create"):
 | 
					    if hasattr(tweet, "message_create"):
 | 
				
			||||||
        entities = tweet.message_create["message_data"]["entities"]
 | 
					        entities = tweet.message_create["message_data"]["entities"]
 | 
				
			||||||
    else:
 | 
					    else:
 | 
				
			||||||
        entities = tweet.entities
 | 
					        if hasattr(tweet, "entities") == True:
 | 
				
			||||||
    for i in entities["urls"]:
 | 
					            entities = tweet.entities
 | 
				
			||||||
        if i["expanded_url"] not in urls:
 | 
					    if entities.get("urls") != None:
 | 
				
			||||||
            urls.append(i["expanded_url"])
 | 
					        for i in entities["urls"]:
 | 
				
			||||||
 | 
					            if i["expanded_url"] not in urls:
 | 
				
			||||||
 | 
					                urls.append(i["expanded_url"])
 | 
				
			||||||
    if hasattr(tweet, "quoted_status"):
 | 
					    if hasattr(tweet, "quoted_status"):
 | 
				
			||||||
        for i in tweet.quoted_status.entities["urls"]:
 | 
					        urls.extend(find_urls(tweet.quoted_status))
 | 
				
			||||||
            if i["expanded_url"] not in urls:
 | 
					 | 
				
			||||||
                urls.append(i["expanded_url"])
 | 
					 | 
				
			||||||
    if hasattr(tweet, "retweeted_status"):
 | 
					    if hasattr(tweet, "retweeted_status"):
 | 
				
			||||||
        for i in tweet.retweeted_status.entities["urls"]:
 | 
					        urls.extend(find_urls(tweet.retweeted_status))
 | 
				
			||||||
            if i["expanded_url"] not in urls:
 | 
					 | 
				
			||||||
                urls.append(i["expanded_url"])
 | 
					 | 
				
			||||||
        if hasattr(tweet["retweeted_status"], "quoted_status"):
 | 
					 | 
				
			||||||
            for i in tweet.retweeted_status.quoted_status.entities["urls"]:
 | 
					 | 
				
			||||||
                if i["expanded_url"] not in urls:
 | 
					 | 
				
			||||||
                    urls.append(i["expanded_url"])
 | 
					 | 
				
			||||||
    if hasattr(tweet, "message"):
 | 
					    if hasattr(tweet, "message"):
 | 
				
			||||||
        i = "message"
 | 
					        i = "message"
 | 
				
			||||||
    elif hasattr(tweet, "full_text"):
 | 
					    elif hasattr(tweet, "full_text"):
 | 
				
			||||||
@@ -109,22 +103,22 @@ def get_all_mentioned(tweet, conf, field="screen_name"):
 | 
				
			|||||||
                results.append(i.get(field))
 | 
					                results.append(i.get(field))
 | 
				
			||||||
    return results
 | 
					    return results
 | 
				
			||||||
 | 
					
 | 
				
			||||||
def get_all_users(tweet, conf):
 | 
					def get_all_users(tweet, session):
 | 
				
			||||||
    string = []
 | 
					    string = []
 | 
				
			||||||
 | 
					    user = session.get_user(tweet.user)
 | 
				
			||||||
    if hasattr(tweet, "retweeted_status"):
 | 
					    if hasattr(tweet, "retweeted_status"):
 | 
				
			||||||
        string.append(tweet.user.screen_name)
 | 
					        string.append(user.screen_name)
 | 
				
			||||||
        tweet = tweet.retweeted_status
 | 
					        tweet = tweet.retweeted_status
 | 
				
			||||||
    if hasattr(tweet, "sender"):
 | 
					 | 
				
			||||||
        string.append(tweet.sender.screen_name)
 | 
					 | 
				
			||||||
    else:
 | 
					    else:
 | 
				
			||||||
        if tweet.user.screen_name != conf["user_name"]:
 | 
					        if user.screen_name != session.db["user_name"]:
 | 
				
			||||||
            string.append(tweet.user.screen_name)
 | 
					            string.append(user.screen_name)
 | 
				
			||||||
        for i in tweet.entities["user_mentions"]:
 | 
					        if tweet.get("entities") != None and tweet["entities"].get("user_mentions") != None:
 | 
				
			||||||
            if i["screen_name"] != conf["user_name"] and i["screen_name"] != tweet.user.screen_name:
 | 
					            for i in tweet.entities["user_mentions"]:
 | 
				
			||||||
                if i["screen_name"] not in string:
 | 
					                if i["screen_name"] != session.db["user_name"] and i["screen_name"] != user.screen_name:
 | 
				
			||||||
                    string.append(i["screen_name"])
 | 
					                    if i["screen_name"] not in string:
 | 
				
			||||||
 | 
					                        string.append(i["screen_name"])
 | 
				
			||||||
    if len(string) == 0:
 | 
					    if len(string) == 0:
 | 
				
			||||||
        string.append(tweet.user.screen_name)
 | 
					        string.append(user.screen_name)
 | 
				
			||||||
    return string
 | 
					    return string
 | 
				
			||||||
 | 
					
 | 
				
			||||||
def if_user_exists(twitter, user):
 | 
					def if_user_exists(twitter, user):
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user