1
0
Fork 0
mirror of https://github.com/myned/modufur.git synced 2024-11-01 21:02:38 +00:00

Change similarity logic to return False instead of processing everything

This commit is contained in:
Myned 2019-09-24 22:18:27 -04:00
parent 884f101ad4
commit 98eb5e2cc0
No known key found for this signature in database
GPG key ID: BC58C09870A63E59

View file

@ -50,6 +50,10 @@ async def query_kheina(url):
iqdbdata = soup.find('data', id='iqdbdata').string iqdbdata = soup.find('data', id='iqdbdata').string
iqdbdata = ast.literal_eval(iqdbdata) iqdbdata = ast.literal_eval(iqdbdata)
similarity = int(float(iqdbdata[0]['similarity']))
if similarity < 55:
return False
for e in results: for e in results:
if iqdbdata[0]['iqdbid'] in e: if iqdbdata[0]['iqdbid'] in e:
match = e match = e
@ -59,7 +63,7 @@ async def query_kheina(url):
'source': match[3], 'source': match[3],
'artist': match[4], 'artist': match[4],
'thumbnail': f'https://f002.backblazeb2.com/file/kheinacom/{match[1]}.jpg', 'thumbnail': f'https://f002.backblazeb2.com/file/kheinacom/{match[1]}.jpg',
'similarity': str(int(float(iqdbdata[0]['similarity']))), 'similarity': str(similarity),
'database': 'Kheina' 'database': 'Kheina'
} }
@ -74,9 +78,9 @@ async def query_saucenao(url):
match = content['results'][0] match = content['results'][0]
if 'author_name' in match['data']: similarity = int(float(match['header']['similarity']))
artist = 'author_name' if similarity < 55:
elif 'member_name' in match['data']: return False
artist = 'member_name' artist = 'member_name'
elif 'creator' in match['data']: elif 'creator' in match['data']:
artist = 'creator' artist = 'creator'
@ -87,7 +91,7 @@ async def query_saucenao(url):
'source': match['data']['ext_urls'][0], 'source': match['data']['ext_urls'][0],
'artist': match['data'][artist], 'artist': match['data'][artist],
'thumbnail': match['header']['thumbnail'], 'thumbnail': match['header']['thumbnail'],
'similarity': str(int(float(match['header']['similarity']))), 'similarity': str(similarity),
'database': 'SauceNAO' 'database': 'SauceNAO'
} }
@ -102,9 +106,9 @@ async def get_post(url):
raise exc.SizeError(size(filesize, system=alternative)) raise exc.SizeError(size(filesize, system=alternative))
result = await query_kheina(url) result = await query_kheina(url)
if int(result['similarity']) < 55: if not result:
result = await query_saucenao(url) result = await query_saucenao(url)
if int(result['similarity']) < 55: if not result:
raise exc.MatchError(re.search('\\/([^\\/]+)$', url).group(1)) raise exc.MatchError(re.search('\\/([^\\/]+)$', url).group(1))
return result return result