0

Ich habe gerade etwas seltsam entdeckt. Wenn Daten von Facebook mit GET mit der requests 2.18.4 Bibliothek herunterzuladen, erhalte ich Fehler, wenn ich nurGET Anfragen funktioniert nur mit Parametern nicht nur URL

requests.get('https://.../{}/likes?acces_token={}'.format(userID,token)) 

, in denen ich den Benutzer-ID und den Zugang zu analysieren - die API nicht das Zugriffstoken richtig liest.

Aber es funktioniert gut als

requests.get('https://../{}'.format(userID), params={"access_token":token}) 

Oder es funktioniert, wenn ich die Werte in den entsprechenden Feldern von Hand in der Python-Konsole kopieren und einfügen.

Also meine Hypothese ist, dass es etwas hat mit, wie die Token-Zeichenfolge mit dem params gegen die Zeichenfolge analysiert wurde. Aber was ich überhaupt nicht verstehe, warum sollte das so sein? Oder ist ? Zeichen irgendwie seltsam in diesem Fall?

+0

Welche Fehler bekommen Sie? Bitte erstellen Sie einige Beispiele, die getestet werden können. –

+0

1. URL: 'http: //.../x/likes? Acces_token = y', 2. URL:' http: //.../x? Access_token = y' –

Antwort

1

Überprüfen Sie, ob beide URLs identisch sind (in Ihrem Beitrag unterscheiden sie sich durch die Teilzeichenfolge /likes).

Dann können Sie prüfen, wie die Bibliothek requests verketteten Parameter aus dem params Argument:



    url = 'https://facebook.com/.../{}'.format(userID) 
    r = requests.Request('GET', url, params={"access_token":token}) 
    pr = r.prepare() 
    print pr.url 

Verwandte Themen