Also versuche ich Python zu lernen, damit ich mit einer API arbeiten kann. Das Tutorial, das ich benutzte, benutzte Python 2 und Urllib. Ich habe Python 3.6 ausgeführt, also hat es nicht funktioniert. Also beschloss ich, über Anfragen zu lernen. Ich habe ein bisschen Probleme bei der Konvertierung von Urlib zu Anfragen.Parameter in Anfragen
import requests
import json
parameters = {"apikey": "mykey", "queries": "SN74S74N"}
response = requests.get("http://octopart.com/api/v3/parts/match", params =
parameters)
data = response.json()
#print(type(data))
print(data)
Die Störung, die ich erhalte, wenn ich laufen diese
{'message': 'JSON decode error: SN74S74N', '__class__': 'ClientErrorResponse'}
ist ich bin nicht sicher, warum ich diesen Fehler bin immer. Aber ich denke, das könnte daran liegen, dass meine Parameter nicht richtig eingestellt sind. Können Anfragen dasselbe tun wie in der Dokumentation? https://octopart.com/api/docs/v3/rest-api#endpoints-parts-match
Sorry das ist vage, ich habe gerade angefangen, Python und Apis zu lernen. Wird zur Verfügung stehen, um weitere Fragen zu klären.
Gemäß der Dokumentation https://octopart.com/api/docs/v3/rest-api#endpoints-parts-match, wird der Wert von 'Abfragen =' sollte keine einfache Zeichenfolge sein wie 'SN74S74N'. –
So ein kurzer Blick auf die Octopart-API-Dokumentation lässt es so aussehen, als wäre es ein Fehler, den ihre API zurücksendet, indem sie sagt, dass Ihr 'queries'-Wert nicht in dem erwarteten Format ist. Requests tut, was es tun sollte, aber Sie müssen an der Formatierung der Abfrage arbeiten. –
Die Dokumentation (https://octopart.com/api/docs/v3/overview) scheint darauf hinzudeuten, dass der Parameter "queries" eine Liste von Wörterbüchern und keine Zeichenfolge sein sollte. Wie im Python-Beispiel: 'queries = [ {'mpn': 'SN74S74N', 'referenz': 'line1'}, {'sku': '67K1122', 'referenz': 'line2'}, { 'mpn_or_sku': 'SN74S74N', 'Referenz': 'line3'}, { 'Marke': 'Texas Instruments', 'MPN': 'SN74S74N', 'Referenz': 'line4'} ] ' –