cleanup, refactor sources into enum
This commit is contained in:
parent
36c4cb204c
commit
90355661bf
51
main.py
51
main.py
|
@ -1,43 +1,43 @@
|
|||
import os
|
||||
import re
|
||||
import pandas as pd
|
||||
|
||||
from enum import Enum
|
||||
from pprint import pprint
|
||||
from urllib.parse import urlparse
|
||||
|
||||
import pandas as pd
|
||||
|
||||
import spotipy
|
||||
#from spotipy.oauth2 import SpotifyClientCredentials
|
||||
from spotipy.oauth2 import SpotifyOAuth
|
||||
from pprint import pprint
|
||||
|
||||
from config import *
|
||||
|
||||
SRC_SPOTIFY = 'spotify'
|
||||
SRC_YOUTUBE = 'youtube'
|
||||
SRC_SOUNDCLOUD = 'soundcloud'
|
||||
SRC_BANDCAMP = 'bandcamp'
|
||||
SRC_OTHER = 'other'
|
||||
class MusicSource(Enum):
|
||||
SPOTIFY = 'spotify'
|
||||
YOUTUBE = 'youtube'
|
||||
SOUNDCLOUD = 'soundcloud'
|
||||
BANDCAMP = 'bandcamp'
|
||||
OTHER = 'other'
|
||||
|
||||
os.environ['SPOTIPY_CLIENT_ID'] = SPOTIPY_CLIENT_ID
|
||||
os.environ['SPOTIPY_CLIENT_SECRET'] = SPOTIPY_CLIENT_SECRET
|
||||
|
||||
SERVICES = {
|
||||
'open.spotify.com': SRC_SPOTIFY,
|
||||
'youtu.be': SRC_YOUTUBE,
|
||||
'www.youtube.com': SRC_YOUTUBE,
|
||||
'soundcloud.app.goo.gl': SRC_SOUNDCLOUD,
|
||||
'on.soundcloud.com': SRC_SOUNDCLOUD,
|
||||
'm.soundcloud.com': SRC_SOUNDCLOUD,
|
||||
'soundcloud.com': SRC_SOUNDCLOUD
|
||||
'open.spotify.com': MusicSource.SPOTIFY,
|
||||
'youtu.be': MusicSource.YOUTUBE,
|
||||
'www.youtube.com': MusicSource.YOUTUBE,
|
||||
'soundcloud.app.goo.gl': MusicSource.SOUNDCLOUD,
|
||||
'on.soundcloud.com': MusicSource.SOUNDCLOUD,
|
||||
'm.soundcloud.com': MusicSource.SOUNDCLOUD,
|
||||
'soundcloud.com': MusicSource.SOUNDCLOUD
|
||||
}
|
||||
|
||||
def echo(link):
|
||||
o = urlparse(link)
|
||||
#print(o.hostname)
|
||||
|
||||
if re.match(r'([A-Za-z0-9\-]*\.)?bandcamp.com', o.hostname):
|
||||
return {'source': SRC_BANDCAMP, 'link': link}
|
||||
return {'source': MusicSource.BANDCAMP, 'link': link}
|
||||
|
||||
return {'source': SERVICES.get(o.hostname, SRC_OTHER), 'link': link}
|
||||
return {'source': SERVICES.get(o.hostname, MusicSource.OTHER), 'link': link}
|
||||
|
||||
|
||||
|
||||
|
@ -58,13 +58,13 @@ def update_spotify_from_export():
|
|||
other_links = []
|
||||
|
||||
for i in links_w_source:
|
||||
if i['source'] == 'spotify':
|
||||
if i['source'] == MusicSource.SPOTIFY:
|
||||
spotify_links.append(i['link'])
|
||||
elif i['source'] == 'youtube':
|
||||
elif i['source'] == MusicSource.YOUTUBE:
|
||||
yt_links.append(i['link'])
|
||||
elif i['source'] == 'soundcloud':
|
||||
elif i['source'] == MusicSource.SOUNDCLOUD:
|
||||
soundcloud_links.append(i['link'])
|
||||
elif i['source'] == 'bandcamp':
|
||||
elif i['source'] == MusicSource.BANDCAMP:
|
||||
bandcamp.append(i['link'])
|
||||
else:
|
||||
other_links.append(i['link'])
|
||||
|
@ -75,11 +75,6 @@ def update_spotify_from_export():
|
|||
print(bandcamp)
|
||||
print(other_links)
|
||||
|
||||
|
||||
|
||||
#birdy_uri = 'spotify:artist:2WX2uTcsvV5OnS0inACecP'
|
||||
#spotify = spotipy.Spotify(client_credentials_manager=SpotifyClientCredentials())
|
||||
|
||||
scope = "playlist-modify-private"
|
||||
os.environ['SPOTIPY_REDIRECT_URI'] = 'https://example.com/callback'
|
||||
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
#python-telegram-bot
|
||||
spotipy
|
||||
pandas
|
||||
|
|
Loading…
Reference in New Issue