Domanda Ce la farò a usare questo benedetto json?

jurassic88

Utente Iron
15 Maggio 2019
4
1
0
14
Ciao, ho bisogno di raccogliere una grande quantità di dati in breve tempo e l'unico modo è usare un Api.
Il problema è che sono molto ignorante in tema, ho una conoscenza da scuola media dell html e mi sto approcciando ora allo Javascript, qualche anno fa cazzeggiavo con l arduino, la mia conoscenza del mondo della programmazione si ferma qui.
C è qualche buon anima che mi sa consigliare un percorso sostenibile per uno come me che vuole imparare solamente a fare richieste a un api in formato json?
Devo conoscere html, javascript, css e python alla perfezione?
Grazie
 
Il JSON non è altro che un modo per scrivere i dati:
Se vuoi rappresentare una persona il'oggetto JSON sarà il seguente (uso giustoqualche proprietà):
Codice:
{
    "nome": "Mionome",
    "cognome": "Miocognome",
    "eta": 20
}

Come puoi notare, un oggetto JSON è rappresentato dalle paretesi graffe e al suo interno ci sono i vari attributi rappresentati in: "chiave": valore.
La chiave è sempre compresa in doppi apici e il valore dipende dal tipo usato (se si tratta di stringheè rachiuso tra i doppi apici, se è un numero lo puoi scrivere direttamente, come nell'esempio sopra)

Se l'oggetto è leggermente più complesso, tipo una ricetta, puoi fare così:
Codice:
{
    "nome": "Ricetta pasta al sugo",
    "tempo_preparazione": 25,
    "ingredienti": [
        "pasta",
        "sugo al pomodoro",
         ......
    ]
}

In questo caso ho aggiunto una lista.

Il caso più complesso che puoi avere è una lista di oggetti che sarà rappresentata in questo modo:

Codice:
{
    "lista_ricette": [
        {
            "nome": "Prima ricetta",
            "tempo_preparazione":10,
        },
        {
            "nome": "Seconda ricetta",
            "tempo_preparazione":10,
        },
        .......
    ]
}

Questo è quanto. Anche se sarebbe bastato leggere la specifica su un qualsiasi sito
 
  • Mi piace
Reazioni: CrashTest e 0xbro
Grazie per la risposta. Allora un pò ne sto uscendo, sto usando postman per fare richieste con l'api, e riesco a utilizzare gli endpoint che mi servono.
Quello che voglio fare è raccogliere statistiche su un migliaio di partite di calcio, e filtrarle in base ad alcuni criteri (tipo quote di apertura, goal subiti ecc)
Ora mi ritrovo con un file .json con tutte le partite che mi servono.

35542


Quello che vorrei fare è catalogare tutte queste partite, per esempio mettendo assieme tutte le partite con "league_id" uguale, o raggruppare tutte le partite che tra queste sono finite 0-0 ecc. ecc.
Dovrei creare una sorta di database giusto?
 
Si, devi mettere tutto in un database, visto che non stai progettando da zero ti sarà più facile riprodurre le tabelle.
In questo modo ti è più facile estrarre i dati che ti servono e puoi consultarli senza dover fare ogni volta chiamate a siti esterni (potrebbero pure bloccare l'ip)
 
Eh il problema é che non so da dove iniziare. Sto cercando dei software gia pronti che mi aiutino in questo lavoro. Ne conoscete qualcuno? Ho letto che un alternativa sarebbe modificare i file con phyton , ma a meno che non abbia delle linee di codice gia pronte non saprei metterci le mani...
Messaggio unito automaticamente:

Se qualche buon anima mi da una mano ci si puo mettere d accordo via mp
 
Guardando lo screen che hai postato, la struttura sembra abbastanza semplice, alla fine ti basta ricopiare.
Cerchi software che facciano cosa? Considera che devi creare delle tabelle mysql, non conosco un software che ti crei il database partendo da un oggetto con una struttura non definita.

Dai un'occhiata QUI, ti basta studiare i primi 3 capitoli (sono articoletti, niente di lungo e complicato)
 
Crea un server in locale con xampp https://www.apachefriends.org/it/index.html in phpmyadmin crei le tabelle che ti servono quindi dovresti fare prima una progettazione del DB http://www.di.unito.it/~damiani/DIDATTICA/aa03/InfAppBD/MyMAT/InfoApp47-65.pdf
Una volta creato puoi interrogare il database a piacimento con tutti i filtri che ti servono
in php ad esempio:
PHP:
<?php
    $user="username";
    $password="password";
    $database="database";
    mysql_connect(localhost,$user,$password);
    @mysql_select_db($database) or die( "Unable to select database");

    $query= "SELECT * FROM Partite ORDER BY id DESC LIMIT 1000 WHERE open_quote > 1.2 AND goal_subiti < 2";
    mysql_query($query);
    mysql_close();
?>