Skip to content

Commit f627ba0

Browse files
authored
Merge pull request #18 from zurdi15/develop
filename parentheses are now omitted when searching game in IGDB
2 parents 3f00a0b + a36a3a2 commit f627ba0

1 file changed

Lines changed: 8 additions & 4 deletions

File tree

backend/src/handler/igdb_handler.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import sys
22
import functools
3+
import re
34
from time import time
45

56
import requests
@@ -65,9 +66,11 @@ def get_rom_details(self, filename: str, p_igdb_id: int, r_igdb_id: str) -> dict
6566

6667
else:
6768
if p_igdb_id:
69+
search_term: str = re.sub('[\(\[].*?[\)\]]', '', filename_no_ext)
6870
try:
71+
6972
res_details: dict = requests.post("https://api.igdb.com/v4/games/", headers=self.headers,
70-
data=f"search \"{filename_no_ext}\";fields id, slug, name, summary; where platforms=[{p_igdb_id}] & category=0;").json()[0]
73+
data=f"search \"{search_term}\";fields id, slug, name, summary; where platforms=[{p_igdb_id}] & category=0;").json()[0]
7174
igdb_id = res_details['id']
7275
slug = res_details['slug']
7376
name = res_details['name']
@@ -78,7 +81,7 @@ def get_rom_details(self, filename: str, p_igdb_id: int, r_igdb_id: str) -> dict
7881
except IndexError:
7982
try:
8083
res_details: dict = requests.post("https://api.igdb.com/v4/games/", headers=self.headers,
81-
data=f"search \"{filename_no_ext}\";fields name, id, slug, summary; where platforms=[{p_igdb_id}] & category=10;").json()[0]
84+
data=f"search \"{search_term}\";fields name, id, slug, summary; where platforms=[{p_igdb_id}] & category=10;").json()[0]
8285
igdb_id = res_details['id']
8386
slug = res_details['slug']
8487
name = res_details['name']
@@ -89,7 +92,7 @@ def get_rom_details(self, filename: str, p_igdb_id: int, r_igdb_id: str) -> dict
8992
except IndexError:
9093
try:
9194
res_details: dict = requests.post("https://api.igdb.com/v4/games/", headers=self.headers,
92-
data=f"search \"{filename_no_ext}\";fields name, id, slug, summary; where platforms=[{p_igdb_id}];").json()[0]
95+
data=f"search \"{search_term}\";fields name, id, slug, summary; where platforms=[{p_igdb_id}];").json()[0]
9396
igdb_id = res_details['id']
9497
slug = res_details['slug']
9598
name = res_details['name']
@@ -112,8 +115,9 @@ def get_rom_details(self, filename: str, p_igdb_id: int, r_igdb_id: str) -> dict
112115

113116
@check_twitch_token
114117
def get_matched_roms(self, filename: str, p_igdb_id: int) -> list:
118+
search_term: str = re.sub('[\(\[].*?[\)\]]', '', filename.split('.')[0])
115119
matched_roms: list = requests.post("https://api.igdb.com/v4/games/", headers=self.headers,
116-
data=f"search \"{filename.split('.')[0]}\";fields name, id, slug, summary; where platforms=[{p_igdb_id}];").json()
120+
data=f"search \"{search_term}\";fields name, id, slug, summary; where platforms=[{p_igdb_id}];").json()
117121
for rom in matched_roms:
118122
res_details: dict = requests.post("https://api.igdb.com/v4/covers/", headers=self.headers,
119123
data=f"fields url; where game={rom['id']};").json()[0]

0 commit comments

Comments
 (0)