diff --git a/filters.py b/filters.py index c18904bb5..8044f1b58 100644 --- a/filters.py +++ b/filters.py @@ -114,7 +114,7 @@ def _is_twitter_post(content: str) -> bool: """ features = ( '/x.com', '/twitter.', '/nitter.', - '@twitter.', '@nitter.','@x.com', + '@twitter.', '@nitter.', '@x.com', '>RT <', '_tw<', '_tw@', 'tweet', 'Tweet', '🐦🔗' ) for feat in features: diff --git a/utils.py b/utils.py index a45997be1..e3f1b0cff 100644 --- a/utils.py +++ b/utils.py @@ -5306,42 +5306,44 @@ def get_media_url_from_video(post_json_object: {}) -> (str, str, str, str): media_url = None media_torrent = None media_magnet = None - if post_json_object.get('url'): - if isinstance(post_json_object['url'], list): - for media_link in post_json_object['url']: - if not isinstance(media_link, dict): + if not post_json_object.get('url'): + return media_type, media_url, media_torrent, media_magnet + if not isinstance(post_json_object['url'], list): + return media_type, media_url, media_torrent, media_magnet + for media_link in post_json_object['url']: + if not isinstance(media_link, dict): + continue + if not media_link.get('mediaType'): + continue + if not media_link.get('href'): + continue + if media_link.get('tag'): + media_tags = media_link['tag'] + if isinstance(media_tags, list): + for tag_link in media_tags: + if not isinstance(tag_link, dict): + continue + if not tag_link.get('mediaType'): + continue + if not tag_link.get('href'): + continue + if tag_link['mediaType'] == 'video/mp4' or \ + tag_link['mediaType'] == 'video/ogv': + media_type = tag_link['mediaType'] + media_url = remove_html(tag_link['href']) + break + if media_type and media_url: continue - if not media_link.get('mediaType'): - continue - if not media_link.get('href'): - continue - if media_link.get('tag'): - media_tags = media_link['tag'] - if isinstance(media_tags, list): - for tag_link in media_tags: - if not isinstance(tag_link, dict): - continue - if not tag_link.get('mediaType'): - continue - if not tag_link.get('href'): - continue - if tag_link['mediaType'] == 'video/mp4' or \ - tag_link['mediaType'] == 'video/ogv': - media_type = tag_link['mediaType'] - media_url = remove_html(tag_link['href']) - break - if media_type and media_url: - continue - if media_link['mediaType'] == 'application/x-bittorrent': - media_torrent = remove_html(media_link['href']) - if media_link['href'].startswith('magnet:'): - media_magnet = remove_html(media_link['href']) - if media_link['mediaType'] != 'video/mp4' and \ - media_link['mediaType'] != 'video/ogv': - continue - if not media_url: - media_type = media_link['mediaType'] - media_url = remove_html(media_link['href']) + if media_link['mediaType'] == 'application/x-bittorrent': + media_torrent = remove_html(media_link['href']) + if media_link['href'].startswith('magnet:'): + media_magnet = remove_html(media_link['href']) + if media_link['mediaType'] != 'video/mp4' and \ + media_link['mediaType'] != 'video/ogv': + continue + if not media_url: + media_type = media_link['mediaType'] + media_url = remove_html(media_link['href']) return media_type, media_url, media_torrent, media_magnet