extract_info.py (1100B)
1 import youtube_dl 2 import pylast 3 from youtube_title_parse import get_artist_title 4 from functions.lastfm_init import lastfm_network 5 6 def get_video_info(url): 7 ytdl_opts = {'source_address': '0.0.0.0'} 8 ydl = youtube_dl.YoutubeDL(ytdl_opts) 9 with ydl: 10 video = ydl.extract_info(url, download=False) 11 title = video['title'] 12 description = video['description'] 13 14 return (title, description) 15 16 def get_artist_song(title): 17 try: 18 artist, song = get_artist_title(title) 19 except TypeError as e: 20 artist = None 21 song = None 22 23 return artist, song 24 25 def get_artist_info(artist): 26 try: 27 info = lastfm_network.get_artist(artist).get_bio_summary() 28 except pylast.WSError as e: 29 info = None 30 31 return info 32 33 def get_tags(artist): 34 try: 35 info = lastfm_network.get_artist(artist).get_top_tags(limit=2) 36 genre_list = [] 37 for t in info: 38 genre_list.append(t.item.get_name()) 39 40 format_tags = ', '.join(genre_list) 41 except pylast.WSError as e: 42 format_tags = None 43 44 return format_tags