ich habe gestern aus Spaß versucht, eine Abfrage zu programmieren, die auf eine EAN-API zugreift.
Leider funktioniert diese nicht.
Ich habe versucht, diese Abfrage in eine JSON-Datei zu packen, bekomme aber jedes mal einen Error.
Folgenden Error erhalte ich:
Code: Alles auswählen
Traceback (most recent call last):
File "/Users/leon/PycharmProjects/ean_api.py", line 28, in <module>
data = request.json()
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/requests/models.py", line 898, in json
return complexjson.loads(self.text, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/json/__init__.py", line 357, in loads
return _default_decoder.decode(s)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 2 column 1 (char 1)
Das steht auf der Website:
Hier ist mein Code:War die Abfrage erfolgreich, so erhalten Sie Daten im Textformat (MIME-Typ text/plain) zurück.
Code: Alles auswählen
import json
import requests
userid = "&queryid=400000000"
# url sample: http://opengtindb.org/?ean=[ean]&cmd=query&queryid=[userid]
base_url = "http://opengtindb.org/?ean="
query = "&cmd=query"
while True:
print("Welcome to the EAN Database!")
print()
print("1: Search for API")
print("2: Exit")
choice = input("> ")
if choice == "2":
break
if choice == "1":
print("Enter the EAN Number")
print()
ean = input("> ")
ean_call = base_url + ean + query + userid
request = requests.get(ean_call)
print(request)
data = request.json()
print(data)
data = data['body']
print(ean)
print(ean_call)
Kann mir vielleicht jemand weiterhelfen?
Ich wünsche noch einen schönen Abend!
Mit freundlichen Grüßen
Leon