2017-12-29 10 views
0

Ich versuche, eine Sentiment-Analyse für einige Nachrichten mithilfe der News-API zusammen mit der Watson-API durchzuführen. Ich hatte nicht viel Erfahrung mit JSON und wollte wissen, wie man Daten aus einer JSON-Ausgabe zieht.Erstellen von Daten aus JSON

Die Nachrichten-API gibt eine Ausgabe wie folgt aus:

{ 
    status: "ok", 
    totalResults: 10, 
    -articles: [ 
     -{ 
      -source: { 
       id: "bbc-news", 
       name: "BBC News" 
      }, 
      author: "BBC News", 
      title: "Casualties in NY apartment block fire", 
      description: "Some 15 people are reportedly injured in the 
      blaze near Bronx Zoo in New York.", 
      url: "http://www.bbc.co.uk/news/world-us-canada-42508963", 
     } 
    ] 
} 

Es gibt mehr als einen Artikel jeweils mit ihren eigenen Quelle, Autor, Titel, usw. ich den Autor zu extrahieren, Titel der Lage sein wollen, Beschreibung und URL und legen Sie es in ein Dictionary. Führen Sie die URLs dann über Watson aus, um einen Sentimentwert zu erhalten.

Ich bin in der Lage, den Status, totalResults und Artikel aus dem JSON herauszuziehen, aber war nicht erfolgreich in der Lage, eine Schicht in gehen und die anderen artikelspezifischen Informationen herausziehen.

Endziel ist eine GUI, aber das ist mir vor mir selbst. Jede Hilfe wird geschätzt.

EDIT: Mein schlechtes für nicht einschließlich Code. Aber angenommene Antwort funktionierte, also werde ich meinen Code nicht hinzufügen, da es irgendwie irrelevant ist.

+2

zeigen Sie uns Ihren Code – johnII

+1

Ohne den Code und irgendwelche Fehler, die Sie haben, können wir nicht wirklich helfen, Ihr Problem zu beheben. Können Sie uns ein [minimales, vollständiges, überprüfbares Beispiel] (https://stackoverflow.com/help/mcve) geben? – SCB

Antwort

0

Ihr Beispiel-JSON-Objekt oben, wenn es in einer Variablen namens response gespeichert ist, dann können Sie dies tun.

for article in response['articles']: 
    print(article['author']) 
    print(article['url'])