Probleme mit dem Lesen von Daten aus API
Verfasst: Mittwoch 15. Juli 2020, 20:38
Hallo,
ich habe versucht eine Programm zu schreiben, das ein zufälliges deutsches Nomen aussuchen soll. Ich benutze dafür die API von OpenThesaurus und mein Programm sieht bisher so aus:
Allerdings bekomme ich einen Fehler, wenn ich versuche das Programm auszuführen:
Woran liegt das? Ist die JSON Datei nicht geeignet zum weiterverarbeiten? Welche anderen Lösungen gibt es? Danke schon mal im Voraus.
ich habe versucht eine Programm zu schreiben, das ein zufälliges deutsches Nomen aussuchen soll. Ich benutze dafür die API von OpenThesaurus und mein Programm sieht bisher so aus:
Code: Alles auswählen
import requests
import random
import string
import json
print("Daten werden geladen...")
tl = []
start = 250
rb1 = random.choice(string.ascii_letters)
rb2 = random.choice(string.ascii_letters)
rb3 = random.choice(string.ascii_letters)
dreiZB = rb1+rb2+rb3
print (dreiZB)
dataLOAD = requests.get(f"https://www.openthesaurus.de/synonyme/search?q={dreiZB}&format=application/json&substring=true&substringMaxResults=250")
data = dataLOAD.json
sst = str(data["substringterms"])
for words in sst:
term = str(data["substringterms"][word]["term"])
if term[0] in string.ascii_uppercase:
if not( "(" in term):
if not(")" in term):
if not(" " in term):
if not(term in tl):
tl.append(term)
while len(tl) == 0:
dataLOAD = requests.get(f"https://www.openthesaurus.de/synonyme/search?q={dreiZB}&format=application/json&substring=true&substringMaxResults=250&substringFromResults={start}")
data = dataLOAD.json
sst = str(data["substringterms"])
for words in sst:
term = str(data["substringterms"][word]["term"])
if term[0] in string.ascii_uppercase:
if not( "(" in term):
if not(")" in term):
if not(" " in term):
if not(term in tl):
tl.append(term)
start = start + 250
print(tl)
Code: Alles auswählen
File "C:\Users\Example\Example\Example\Wort.py", line 15, in <module>
sst = str(data["substringterms"])
TypeError: 'method' object is not subscriptable