2013-02-13 10 views
5

Stavo usando l'API di YouTube e stavo cercando di ottenere il link YouTube di un utente. L'unica cosa che appare è il link Google+ come un campo chiamato link. Esiste comunque la possibilità di ottenere le informazioni di YouTube dell'utente dalle informazioni sull'account Google?API di Google: individuazione di un canale YouTube degli utenti

La risposta Google ha nome, nome_sunto e collegamento nella risposta JSON.

Grazie!

+0

La tua domanda sarebbe molto più chiara se potessi fornire dettagli sulla chiamata API che stai facendo, un esempio della risposta che stai ricevendo e una spiegazione (incluso un esempio) di cosa intendi con " Link YouTube dell'utente ". –

risposta

1

Non so se è esattamente quello che vuoi, ma utilizzando l'API Google+ è possibile ottenere gli URL degli utenti e uno di loro può essere l'utente di YouTube canale URL

Maggiori informazioni: https://developers.google.com/+/api/latest/people/get

esempio:

Richiesta:

https://www.googleapis.com/plus/v1/people/117629885563933382879?key= {} YOUR_API_KEY

Risposta:

{ 
"kind": "plus#person", 
"etag": "\"l9gWq2lTiBDNZWBx8kpM7h7VNYs/as5084EFycaxtFP9IxDLvhbwZKM\"", 
"birthday": "0000-12-30", 
"gender": "male", 
"urls": [ 
    { 
    "value": "http://twitter.com/matiasmolinas", 
    "type": "other" 
    }, 
    { 
    "value": "http://gplus.to/matiasmolinas", 
    "type": "other" 
    }, 
    { 
    "value": "http://ar.linkedin.com/in/matiasmolinas", 
    "type": "other" 
    }, 
    { 
    "value": "https://www.facebook.com/matias.molinas", 
    "type": "other" 
    }, 
    { 
    "value": "http://www.youtube.com/user/matiasmolinasvideo", 
    "type": "other" 
    }, 
    { 
    "value": "http://stackoverflow.com/users/1427200/matias-molinas", 
    "type": "other" 
    }, 
    { 
    "value": "http://santafegtug.blogspot.com/", 
    "type": "other" 
    }, 
    { 
    "value": "http://fuse21.blogspot.com/", 
    "type": "other" 
    }, 
    { 
    "value": "http://lookthiscode.blogspot.com.ar/", 
    "type": "other" 
    }, 
    { 
    "value": "https://yt-topic-explorer.googlecode.com/git/dist/index.html", 
    "type": "other" 
    }, 
    { 
    "value": "http://santafegtug.appspot.com/", 
    "type": "other" 
    } 
], 
"objectType": "person", 
"id": "117629885563933382879", 
"displayName": "Matias Molinas", 
"name": { 
    "familyName": "Molinas", 
    "givenName": "Matias" 
}, 
"aboutMe": "Citas favoritas:<br /><br />Dentro de veinte años te sentirás más desilusionado por las cosas que no hiciste que por aquéllas que hiciste. Así que suelta las amarras. Navega fuera de la bahía segura. Atrapa los alisios en tus velas. Explora. Sueña. Descubre.<br />", 
"url": "https://plus.google.com/117629885563933382879", 
"image": { 
    "url": "https://lh3.googleusercontent.com/-AJKFDGod6us/AAAAAAAAAAI/AAAAAAAAD64/Olccnle-qH4/photo.jpg?sz=50" 
}, 
"organizations": [ 
    { 
    "name": "UNER", 
    "title": "Bioingenieria", 
    "type": "school", 
    "primary": false 
    }, 
    { 
    "name": "Software Consultant", 
    "title": "Software Consultant", 
    "type": "work", 
    "startDate": "2011", 
    "endDate": "2011", 
    "primary": true 
    }, 
    { 
    "name": "Software Santa Fe", 
    "type": "work", 
    "endDate": "2011", 
    "primary": false 
    } 
], 
"placesLived": [ 
    { 
    "value": "Santa Fe, Argentina", 
    "primary": true 
    } 
], 
"isPlusUser": true, 
"verified": false, 
"cover": { 
    "layout": "banner", 
    "coverPhoto": { 
    "url": "https://lh3.googleusercontent.com/-DjGbmNDlV3U/UNCgpGJu_WI/AAAAAAAAD7Q/7Uk2WidwxnI/w940-h428/gdesummit.png", 
    "height": 428, 
    "width": 940 
    }, 
    "coverInfo": { 
    "topImageOffset": -83, 
    "leftImageOffset": 0 
    } 
} 
} 
+0

Questo sembra essere esattamente quello che voglio. Controllandolo ora. –

+0

Questo è molto utile: https://developers.google.com/oauthplayground/ Non ho mai avuto modo di lavorare ancora, ma penso di essere vicino ora che ho l'elenco completo di punti finali api :) –

+6

Spero che tu ragazzi vedono questo commento La richiesta sopra riportata restituisce un canale YouTube solo se è sotto l'etichetta ** Altri ** dei Link. Se è nell'etichetta YouTube, non verrà visualizzato nei risultati. Quindi funziona solo per una manciata di canali di migliaia di account. C'è un altro modo per farlo che restituisce tutti i canali associati a G + ID? – unknown

0

Come per Google YouTube API channels list documentazione, è possibile ottenere una risposta JSON contenente tutti i canali di YouTube che si riferiscono a un determinato utente di Google.

Fase uno

Ovviamente è necessario assicurarsi di utilizzare OAuth 2.0 per accedere al Developer API di Google (assicurando che si utilizza per YouTube portata: https://www.googleapis.com/auth/youtube). Questo perché è necessario un access_token, per caricare dati specifici dell'utente.

Fase due

Il channels list API può trovare canali tramite: nome utente, ID del canale, ecc ... Una stringa di ID è non necessario però. Puoi invece impostare il parametro booleano mine su true, per fare in modo che i canali YouTube siano di proprietà di un determinato utente Google (non devi specificare l'ID dell'utente Google, perché lo access_token consente a YouTube di sapere quale utente sta tentando di caricare i dati).

Per utilizzare l'API, fare una richiesta utilizzando il seguente URL (sostituendo 'YOUR_ACCESS_TOKEN_HERE' il tuo access_token):

https://www.googleapis.com/youtube/v3/channels?part=snippet%2CcontentDetails%2Cstatistics&mine=true&access_token=YOUR_ACCESS_TOKEN_HERE

Ecco la JSON risposta che si otterrà :

{ 
"kind": "youtube#channelListResponse", 
"etag": "xxxxxxxxxxxxxxxxxxxxxxxxxxx", 
"pageInfo": { 
    "totalResults": 1, 
    "resultsPerPage": 1 
}, 
"items": [ 
    { 
    "kind": "youtube#channel", 
    "etag": "xxxxxxxxxxxxxxxxxxxxxxxxxxx", 
    "id": "YOUTUBE_CHANNEL_ID", 
    "snippet": { 
    "title": "Daniel Sadjadian", 
    "description": "I’m Daniel Sadjadian - Car enthusiast, computer programmer & entrepreneur running my own business. I live life to the max and try my best to get the most out of each day. Every moment counts :)", 
    "customUrl": "danielsadjadian", 
    "publishedAt": "2013-11-09T19:47:41.000Z", 
    "thumbnails": { 
    "default": { 
     "url": "https://yt3.ggpht.com/-EF0LibpIsEY/AAAAAAAAAAI/AAAAAAAAAAA/n0mUHQnyfkc/s88-c-k-no-mo-rj-c0xffffff/photo.jpg" 
    }, 
    "medium": { 
     "url": "https://yt3.ggpht.com/-EF0LibpIsEY/AAAAAAAAAAI/AAAAAAAAAAA/n0mUHQnyfkc/s240-c-k-no-mo-rj-c0xffffff/photo.jpg" 
    }, 
    "high": { 
     "url": "https://yt3.ggpht.com/-EF0LibpIsEY/AAAAAAAAAAI/AAAAAAAAAAA/n0mUHQnyfkc/s240-c-k-no-mo-rj-c0xffffff/photo.jpg" 
    } 
    }, 
    "localized": { 
    "title": "Daniel Sadjadian", 
    "description": "I’m Daniel Sadjadian - Car enthusiast, computer programmer & entrepreneur running my own business. I live life to the max and try my best to get the most out of each day. Every moment counts :)" 
    }, 
    "country": "GB" 
    }, 
    "contentDetails": { 
    "relatedPlaylists": { 
    "likes": "LLXQYiggNxzVJ51ofKyG2ZUg", 
    "favorites": "FLXQYiggNxzVJ51ofKyG2ZUg", 
    "uploads": "UUXQYiggNxzVJ51ofKyG2ZUg", 
    "watchHistory": "HL", 
    "watchLater": "WL" 
    } 
    }, 
    "statistics": { 
    "viewCount": "30305", 
    "commentCount": "0", 
    "subscriberCount": "100", 
    "hiddenSubscriberCount": false, 
    "videoCount": "25" 
    } 
    } 
] 
} 

la risposta JSON comprende dettagli circa l'utente' canale s compreso l'ID del canale. Puoi quindi utilizzare l'ID del canale (in combinazione con altre API di YouTube) per caricare i video del canale/playlist/attività/ecc ...

Problemi correlati