mirror of
https://github.com/rembo10/headphones.git
synced 2026-07-21 16:34:01 +01:00
Use musicbrainz.org directly for queries (find artist, find album, etc)
This commit is contained in:
+16
-15
@@ -18,9 +18,13 @@ mb_lock = threading.Lock()
|
|||||||
|
|
||||||
# Quick fix to add mirror switching on the fly. Need to probably return the mbhost & mbport that's
|
# Quick fix to add mirror switching on the fly. Need to probably return the mbhost & mbport that's
|
||||||
# being used, so we can send those values to the log
|
# being used, so we can send those values to the log
|
||||||
def startmb():
|
def startmb(forcemb=False):
|
||||||
|
|
||||||
if headphones.MIRROR == "localhost":
|
if forcemb or headphones.MIRROR == "musicbrainz.org":
|
||||||
|
mbhost = "musicbrainz.org"
|
||||||
|
mbport = 80
|
||||||
|
sleepytime = 1
|
||||||
|
elif headphones.MIRROR == "localhost":
|
||||||
mbhost = "localhost"
|
mbhost = "localhost"
|
||||||
mbport = 7143
|
mbport = 7143
|
||||||
sleepytime = 0
|
sleepytime = 0
|
||||||
@@ -28,14 +32,10 @@ def startmb():
|
|||||||
mbhost = "178.63.142.150"
|
mbhost = "178.63.142.150"
|
||||||
mbport = 5000
|
mbport = 5000
|
||||||
sleepytime = 0
|
sleepytime = 0
|
||||||
elif headphones.MIRROR == "tbueter.com":
|
else:
|
||||||
mbhost = "tbueter.com"
|
mbhost = "tbueter.com"
|
||||||
mbport = 3000
|
mbport = 3000
|
||||||
sleepytime = 0
|
sleepytime = 0
|
||||||
else:
|
|
||||||
mbhost = "musicbrainz.org"
|
|
||||||
mbport = 80
|
|
||||||
sleepytime = 1
|
|
||||||
|
|
||||||
service = ws.WebService(host=mbhost, port=mbport)
|
service = ws.WebService(host=mbhost, port=mbport)
|
||||||
q = ws.Query(service)
|
q = ws.Query(service)
|
||||||
@@ -55,7 +55,7 @@ def findArtist(name, limit=1):
|
|||||||
if any((c in chars) for c in name):
|
if any((c in chars) for c in name):
|
||||||
name = '"'+name+'"'
|
name = '"'+name+'"'
|
||||||
|
|
||||||
q, sleepytime = startmb()
|
q, sleepytime = startmb(forcemb=True)
|
||||||
|
|
||||||
while attempt < 5:
|
while attempt < 5:
|
||||||
|
|
||||||
@@ -65,7 +65,7 @@ def findArtist(name, limit=1):
|
|||||||
except WebServiceError, e:
|
except WebServiceError, e:
|
||||||
logger.warn('Attempt to query MusicBrainz for %s failed: %s' % (name, e))
|
logger.warn('Attempt to query MusicBrainz for %s failed: %s' % (name, e))
|
||||||
attempt += 1
|
attempt += 1
|
||||||
time.sleep(5)
|
time.sleep(10)
|
||||||
|
|
||||||
time.sleep(sleepytime)
|
time.sleep(sleepytime)
|
||||||
|
|
||||||
@@ -115,7 +115,7 @@ def findRelease(name, limit=1):
|
|||||||
if any((c in chars) for c in name):
|
if any((c in chars) for c in name):
|
||||||
name = '"'+name+'"'
|
name = '"'+name+'"'
|
||||||
|
|
||||||
q, sleepytime = startmb()
|
q, sleepytime = startmb(forcemb=True)
|
||||||
|
|
||||||
while attempt < 5:
|
while attempt < 5:
|
||||||
|
|
||||||
@@ -125,7 +125,7 @@ def findRelease(name, limit=1):
|
|||||||
except WebServiceError, e:
|
except WebServiceError, e:
|
||||||
logger.warn('Attempt to query MusicBrainz for %s failed: %s' % (name, e))
|
logger.warn('Attempt to query MusicBrainz for %s failed: %s' % (name, e))
|
||||||
attempt += 1
|
attempt += 1
|
||||||
time.sleep(5)
|
time.sleep(10)
|
||||||
|
|
||||||
time.sleep(sleepytime)
|
time.sleep(sleepytime)
|
||||||
|
|
||||||
@@ -433,6 +433,7 @@ def getRelease(releaseid):
|
|||||||
|
|
||||||
return release
|
return release
|
||||||
|
|
||||||
|
# Used when there is a disambiguation
|
||||||
def findArtistbyAlbum(name):
|
def findArtistbyAlbum(name):
|
||||||
|
|
||||||
myDB = db.DBConnection()
|
myDB = db.DBConnection()
|
||||||
@@ -452,7 +453,7 @@ def findArtistbyAlbum(name):
|
|||||||
results = None
|
results = None
|
||||||
attempt = 0
|
attempt = 0
|
||||||
|
|
||||||
q, sleepytime = startmb()
|
q, sleepytime = startmb(forcemb=True)
|
||||||
|
|
||||||
while attempt < 5:
|
while attempt < 5:
|
||||||
|
|
||||||
@@ -462,7 +463,7 @@ def findArtistbyAlbum(name):
|
|||||||
except WebServiceError, e:
|
except WebServiceError, e:
|
||||||
logger.warn('Attempt to query MusicBrainz for %s failed: %s. Sleeping 5 seconds.' % (name, e))
|
logger.warn('Attempt to query MusicBrainz for %s failed: %s. Sleeping 5 seconds.' % (name, e))
|
||||||
attempt += 1
|
attempt += 1
|
||||||
time.sleep(5)
|
time.sleep(10)
|
||||||
|
|
||||||
time.sleep(sleepytime)
|
time.sleep(sleepytime)
|
||||||
|
|
||||||
@@ -487,7 +488,7 @@ def findAlbumID(artist=None, album=None):
|
|||||||
results = None
|
results = None
|
||||||
attempt = 0
|
attempt = 0
|
||||||
|
|
||||||
q, sleepytime = startmb()
|
q, sleepytime = startmb(forcemb=True)
|
||||||
|
|
||||||
while attempt < 5:
|
while attempt < 5:
|
||||||
|
|
||||||
@@ -497,7 +498,7 @@ def findAlbumID(artist=None, album=None):
|
|||||||
except Exception, e:
|
except Exception, e:
|
||||||
logger.warn('Attempt to query MusicBrainz for %s - %s failed: %s. Sleeping 5 seconds.' % (artist, album, e))
|
logger.warn('Attempt to query MusicBrainz for %s - %s failed: %s. Sleeping 5 seconds.' % (artist, album, e))
|
||||||
attempt += 1
|
attempt += 1
|
||||||
time.sleep(5)
|
time.sleep(10)
|
||||||
|
|
||||||
time.sleep(sleepytime)
|
time.sleep(sleepytime)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user