-
Errore google api
Salve,
Ho realizzato, sul mio sito, uno script che mi visualizza tutte le playlists e video del mio canale youtube, per evitare il superamento delle query giornalieri ho creato uno script che che salva tutte le playlist e video su database, ecco lo script:
Codice PHP:
<?php
if (isset($_GET["synch"])) {
$connection->query("DELETE FROM youtube_playlists");
$connection->query("DELETE FROM youtube_videos");
// enumerate playlist on youtube channel
$playlists = file_get_contents("https://www.googleapis.com/youtube/v3/playlists?part=snippet&maxResult=9&channelId=" . YT_CHANNEL . "&key=" . YT_KEY);
var_dump("https://www.googleapis.com/youtube/v3/playlists?part=snippet&maxResult=9&channelId=" . YT_CHANNEL . "&key=" . YT_KEY);
$playlists = json_decode($playlists);
foreach($playlists->items as $items) {
$it_title = $connection->real_escape_string($items->snippet->title);
$en_title = $connection->real_escape_string($items->snippet->localized->title);
$thumbnail = $connection->real_escape_string($items->snippet->thumbnails->medium->url);
$it_description = $connection->real_escape_string($items->snippet->description);
$en_description = $connection->real_escape_string($items->snippet->localized->description);
$query = "INSERT INTO youtube_playlists VALUES ('$it_title', '$en_title', '$thumbnail', '$it_description', '$en_description')";
$connection->query($query);
$videos_playlist = "https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&maxResults=25&playlistId=" . $items->id .
"&key=" . YT_KEY;
$videos_playlist = json_decode(file_get_contents($videos_playlist));
foreach ($videos_playlist->items as $vitems) {
$v_id = $connection->real_escape_string($vitems->snippet->resourceId->videoId);
$v_it_title = $connection->real_escape_string($vitems->snippet->title);
$v_thumbnail = $connection->real_escape_string($vitems->snippet->thumbnails->medium->url);
$v_it_description = $connection->real_escape_string($vitems->snippet->description);
$v_query = "INSERT INTO youtube_videos VALUES ('$en_title', '$v_id', '$v_it_title', '', '$v_thumbnail',
'$v_it_description', '')";
echo $v_query;
$connection->query($v_query);
}
}
}
?>
<a href="index.php?page=videos&synch">Synchronize playlists / videos with youtube channel</a>
Premetto che non lo uso da mesi, ma l'ultima volta andava benissimo, ieri, dopo averto rieseguito, non mi è andato, ho provato a mettere un var_dump per stamparmi l'url di google api dove andava a prendere l'elenco delle playlist, sono andato a quell'indirizzo e mi restituisce questo errore:
Codice:
{
"error": {
"code": 403,
"message": "The request cannot be completed because you have exceeded your \u003ca href=\"/youtube/v3/getting-started#quota\"\u003equota\u003c/a\u003e.",
"errors": [
{
"message": "The request cannot be completed because you have exceeded your \u003ca href=\"/youtube/v3/getting-started#quota\"\u003equota\u003c/a\u003e.",
"domain": "youtube.quota",
"reason": "quotaExceeded"
}
]
}
}
Che, se non sbaglio mi dice che ho superato il numero di query giornalieri, ma come mai? visto che era la prima volta che lo eseguivo dopo mesi.
Come posso risolvere?
-
In realtà, è un pò differente la questione.
Per YouTube si hanno delle unità giornaleire e non delle query. Tali unità sono normalmente 10000 al giorno e a seconda dell'azione che si esegue, ne viengono cunsumate un numero differente.
I costi, in termini di unità per operazione sono i seguenti:
Un'operazione di lettura che recupera un elenco di risorse - canali, video, playlist - di solito costa 1 unità.
Un'operazione di scrittura che crea, aggiorna o elimina una risorsa in genere costa 50 unità.
Una richiesta di ricerca costa 100 unità.
Un caricamento video costa 1600 unità.
Di conseguenza, in una query si possono consumare più unità giornaliere.
Maggiori informazioni al riguardo, le può trovare qui: Quota usage
Cordiali saluti.
-
Il problema è che il codice prima, qualche mese fa, mi andava ( non mi superava le unità giornaliere ), ed ora non mi va più, come mai?
L'unica cosa è che, rispetto a prima, ho aggiunto un nuovo video su youtube, quindi dovrà recuperare un nuovo video in piu, non penso sia quello il problema, o sbaglio?
-
Dipende dal complessivo delle operazioni giornaliere, se fa o meno la differenza il caricamento di un video i più.
Adesso non ho idea, se nel tempo di un mese a questa parte, sia cambiato qualcosa per YouTube.
Cordiali saluti.
-