Topic: Estrarre dati da json su Python  (Letto 399 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline Bi_science

  • python unicellularis
  • *
  • Post: 1
  • Punti reputazione: 0
    • Mostra profilo
Estrarre dati da json su Python
« il: Gennaio 29, 2018, 12:19 »
Ciao a tutti,
ho un file json preso dall'API di Pocket e mi restituisce questo file json su Python di questo genere:

{'status': 1, 'complete': 1, 'list': {'237938806': {'item_id': '237938806', 'resolved_id': '237938806', 'given_url': 'https://getpocket.com/developer/docs/v3/retrieve', 'given_title': 'Pocket Developer Program: Pocket API: Retrieve', 'favorite': '0', 'status': '0', 'time_added': '1516282429', 'time_updated': '1516282429', 'time_read': '0', 'time_favorited': '0', 'sort_id': 0, 'resolved_title': 'Retrieve', 'resolved_url': 'https://getpocket.com/developer/docs/v3/retrieve', 'excerpt': 'Pocket's /v3/get endpoint is a single call that is incredibly versatile. A few examples of the types of requests you can make:  In order to use the /v3/get endpoint, your consumer key must have the "Retrieve" permission.', 'is_article': '1', 'is_index': '0', 'has_video': '0', 'has_image': '0', 'word_count': '858'}, '1199370152': {'item_id': '1199370152', 'resolved_id': '1199370152', 'given_url': 'https://github.com/rakanalh/pocket-api', 'given_title': 'rakanalh/pocket-api: A python wrapper around GetPocket API V3.', 'favorite': '0', 'status': '0', 'time_added': '1516282021', 'time_updated': '1516367854', 'time_read': '0', 'time_favorited': '0', 'sort_id': 1, 'resolved_title': 'A python wrapper around GetPocket API V3.', 'resolved_url': 'https://github.com/rakanalh/pocket-api', 'excerpt': "This package provides a wrapper class around GetPocket V3 APIs.  First, you have to Create your consumer key from getpocket's developer console. To get the access token, you have to authorize the app on your own account.", 'is_article': '1', 'is_index': '0', 'has_video': '0', 'has_image': '1', 'word_count': '310'}, '25367385': {'item_id': '25367385', 'resolved_id': '25367385', 'given_url': 'https://github.com/pkrumins/xgoogle', 'given_title': 'pkrumins/xgoogle: Python library to Google services (google search, google ', 'favorite': '0', 'status': '0', 'time_added': '1514469612', 'time_updated': '1514469612', 'time_read': '0', 'time_favorited': '0', 'sort_id': 2, 'resolved_title': 'pkrumins/xgoogle', 'resolved_url': 'https://github.com/pkrumins/xgoogle', 'excerpt': "This is a Google library called 'xgoogle'. Current version is 1.3.  It's written by Peteris Krumins (peter@catonmat.net). His blog is at http://www.catonmat.net  --  good coders code, great reuse.  The code is licensed under MIT license.", 'is_article': '1', 'is_index': '1', 'has_video': '0', 'has_image': '0', 'word_count': '780'}, '2006096221': {'item_id': '2006096221', 'resolved_id': '2006016352', 'given_url': 'http://www.repubblica.it/sport/calcio/serie-a/milan/2017/12/27/news/milan_capello_duro_con_bonucci_non_sa_difendere_-185320158/?ref=RHPPBT-VS-I0-C6-P11-S1.6-T1', 'given_title': "Milan, Capello in tackle su Bonucci: ''Non sa difendere'' - Repubblica.it", 'favorite': '0', 'status': '0', 'time_added': '1514390428', 'time_updated': '1514390430', 'time_read': '0', 'time_favorited': '0', 'sort_id': 3, 'resolved_title': "Milan, Capello in tackle su Bonucci: ''Non sa difendere''", 'resolved_url': 'http://www.repubblica.it/sport/calcio/serie-a/milan/2017/12/27/news/milan_capello_duro_con_bonucci_non_sa_difendere_-185320158/', 'excerpt': 'MILANO - "Bonucci? Bravo ad impostare, ma non sa difendere". A Natale si è tutti più buoni.', 'is_article': '1', 'is_index': '0', 'has_video': '0', 'has_image': '1', 'word_count': '199', 'amp_url': 'http://www.repubblica.it/sport/calcio/serie-a/milan/2017/12/27/news/milan_capello_duro_con_bonucci_non_sa_difendere_-185320158/amp/'}, '154272244': {'item_id': '154272244', 'resolved_id': '154272244', 'given_url': 'https://getpocket.com/a/queue/', 'given_title': 'getpocket.com', 'favorite': '0', 'status': '0', 'time_added': '1514389934', 'time_updated': '1514389934', 'time_read': '0', 'time_favorited': '0', 'sort_id': 4, 'resolved_title': '"Page Saved!" Here are some tips to get started with Pocket', 'resolved_url': 'https://getpocket.com/a/queue/', 'excerpt': "You've used the Pocket button to save a page from Pocket's website! Now that you know how to save to Pocket, it's time to venture out and build your own personal reading list.", 'is_article': '1', 'is_index': '1', 'has_video': '0', 'has_image': '1', 'word_count': '360'}, '2006020947': {'item_id': '2006020947', 'resolved_id': '2006020947', 'given_url': 'https://www.youtube.com/watch?v=Y8QkXJon2Wg', 'given_title': 'Programmiamo il BOT - Come creare un BOT per Telegram #2 - YouTube', 'favorite': '0', 'status': '0', 'time_added': '1514385343', 'time_updated': '1514385344', 'time_read': '0', 'time_favorited': '0', 'sort_id': 5, 'resolved_title': 'Programmiamo il BOT - Come creare un BOT per Telegram #2', 'resolved_url': 'https://www.youtube.com/watch?v=Y8QkXJon2Wg', 'excerpt': 'Secondo episodio della serie dedicata alla creazione di BOT per la piattaforma di messaggistica migliore al mondo, oggi iniziamo a programmare in maniera molto facile il BOT in python... E ci trasferiamo su un raspberryQuesto è il VPS più economico: https://www.scaleway.comIl mio canale telegram ', 'is_article': '0', 'is_index': '0', 'has_video': '2', 'has_image': '1', 'word_count': '0'}, '2005939584': {'item_id': '2005939584', 'resolved_id': '2005860413', 'given_url': 'http://www.repubblica.it/politica/2017/12/27/news/ius_soli_manconi_colpa_del_pd-185307722/?ref=RHPPLF-BH-I0-C8-P1-S1.8-T1', 'given_title': 'Ius Soli, nel Pd c'è chi non si arrende. Manconi a Mattarella: "Prolunghi l', 'favorite': '0', 'status': '0', 'time_added': '1514383639', 'time_updated': '1514384445', 'time_read': '0', 'time_favorited': '0', 'sort_id': 6, 'resolved_title': 'Ius Soli, Manconi: "Colpa del Pd, non ci ha creduto abbastanza"', 'resolved_url': 'http://www.repubblica.it/politica/2017/12/27/news/ius_soli_manconi_colpa_del_pd-185307722/', 'excerpt': "ROMA - Luigi Manconi, senatore Pd e presidente della Commissione per i diritti umani, è intervenuto questa mattina a Radio anch'io, accusando il suo partito per la mancata approvazione dello Ius Soli.", 'is_article': '1', 'is_index': '0', 'has_video': '0', 'has_image': '1', 'word_count': '209', 'amp_url': 'http://www.repubblica.it/politica/2017/12/27/news/ius_soli_manconi_colpa_del_pd-185307722/amp/'}}, 'error': None, 'search_meta': {'search_type': 'normal'}, 'since': 1517219963}

Domanda: Come posso fare a estrarre i 'given_url' su Python con la libreria json???? Praticamente mi servirebbe estrarre la lista degli url che mi invia Pocket con questo json

Offline tommyb1992

  • python neanderthalensis
  • ****
  • Post: 296
  • Punti reputazione: 0
    • Mostra profilo
Re:Estrarre dati da json su Python
« Risposta #1 il: Gennaio 29, 2018, 14:26 »
array=json.loads(json_var)
for id, value in array.items():
  print(value["given_url"])


non so se sia giusto perchè non ho voglia di districare il dato json, ma il succo del discorso non cambia...

Offline Aprimus

  • python unicellularis
  • *
  • Post: 1
  • Punti reputazione: 0
    • Mostra profilo
Re:Estrarre dati da json su Python
« Risposta #2 il: Gennaio 29, 2018, 14:49 »
Potrest provare anche cosi....


d = json.loads(json_resp)
urls = [item['given_url'] for item in d['list'].values() if 'given_url' in item]