Bonjour à la communauté,

J'ai un petit problème sur du Python 3

Je souhaite récupérer des informations (sports, ligues, matchs,...) au travers de l'API d'un site de pari en ligne. J'ai une erreur qui survient quand j'exécute le code Python que je n'avais jamais eu. Je n'arrive pas à trouver la solution à mon problème. Pourriez-vous m'aider s'il vous plaît ?

J'ai pour l'instant réussir à récupérer les sports et ligues proposés sur le site en question. J'ai fait des inserts de ces infos dans 2 tables
=> SPORTS pour les différentes sports proposés / Champs : sportId (PK), sportName
=> LEAGUES pour les différentes ligues de chaque sport / Champs : leagueId (PK), leagueName, sportId (FK vers SPORTS)
Je voudrais maintenant récupérer les informations concernant les rencontres sur chaque ligue

Code Python : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
def get_request(url_request):   
    url='*****' + url_request
    b64str = base64.b64encode("{}:{}".format(username,password).encode('utf-8'))
    headers = {'Content-length' : '0',
               'Content-type' : 'application/json',
               'Authorization' : "Basic " + b64str.decode('utf-8')
               }
 
    req = ulib.Request(url, headers=headers)
 
    responseData = ulib.urlopen(req).read()
    response = json.loads(responseData.decode('utf-8'))
    return response
 
# Je viens me connecter à une base SQL SERVER
conn = pyodbc.connect('Driver={SQL Server};'
                      'Server=*****;'
                      'Database=*****;'
                      'Trusted_Connection=yes;')
cursor = conn.cursor()
 
# Je viens récupérer les clés primaires de chaque sport et chaque ligue qui vont me permettent ensuite de remonter les informations sur les rencontres. Ces informations vont être copiées dans l'URL de l'API.
query = 'SELECT sportId, leagueId FROM LEAGUES'
df = pd.read_sql(query, conn)                  
 
# Suppression des lignes de la table EVENTS avant insertion. Cette table contiendra les informations sur les rencontres
=> Champs : eventId (PK), homeTeam, awayTeam, eventDate, leagueId (PK vers LEAGUES)
cursor.execute('TRUNCATE TABLE EVENTS')
 
 
for index, row in df.iterrows() :
    events={}
    for i in get_request('/v1/fixtures?sportid='+str(row['sportId'])+'&leagueids='+str(row['leagueId']))['league'] :
        events['tmp']=i['events']
    events_final=pd.DataFrame(events['tmp'])
 
    for index2, row2 in events_final.iterrows() :
        request='INSERT INTO EVENTS_PINN(eventId, homeTeam, awayTeam, eventDate, leagueId) VALUES 
        ('+str(row2['id'])+",'"+row2['home']+"','"+row2['away']+"','"+row2['starts']+"',"+str(row['leagueId'])+')'
        cursor.execute(request)
        conn.commit()
conn.close()

Erreur renvoyée :
JSONDecodeError: Expecting value: line 1 column 1 (char 0)