2013-02-13 5 views
5

Używałem interfejsu API YouTube i próbowałem uzyskać link do YouTube użytkownika. Pojawia się tylko link Google+ jako pole o nazwie link. Czy mimo to można uzyskać informacje o Youtube użytkowników z danych konta Google?Google API: znajdź kanał YouTube dla użytkowników

Odpowiedź Google zawiera imię, imię i link w odpowiedzi json.

Dzięki!

+0

Twoje pytanie byłoby bardziej przejrzyste, gdybyś mógł podać szczegółowe informacje na temat wywoływanego przez ciebie interfejsu API, próbkę odpowiedzi, którą otrzymujesz, oraz wyjaśnienie (w tym przykład), co masz na myśli przez " link użytkownika YouTube ". –

Odpowiedz

1

ja nie wiem, czy to jest dokładnie to, co chcesz, ale używając API Google+ można uzyskać adresy URL użytkownika i jeden z nich może być użytkownik YouTube kanał URL

Więcej informacji: https://developers.google.com/+/api/latest/people/get

Przykład:

Wniosek:

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

Response:

{ 
"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

Wygląda na to, że dokładnie to, czego chcę. Sprawdź to teraz. –

+0

Jest to bardzo przydatne: https://developers.google.com/oauthplayground/ Nigdy nie udało mi się jeszcze pracować, ale myślę, że jestem już blisko, że mam pełną listę punktów końcowych api :) –

+6

Mam nadzieję, że faceci widzą ten komentarz. Powyższe żądanie zwraca tylko kanał YouTube, jeśli znajduje się pod etykietą ** Inne ** linków. Jeśli jest w etykiecie YouTube, nie pojawi się na wynikach. Więc działa tylko dla kilku kanałów z tysiąca kont. Czy istnieje inny sposób robienia tego, który zwraca wszystkie kanały powiązane z danym G + ID? – unknown

0

Zgodnie z dokumentacją Google YouTube API channels list, można uzyskać odpowiedź JSON zawierający wszystkie kanały YouTube, które odnoszą się do konkretnego użytkownika Google.

Krok

Oczywiście trzeba upewnić się, że używasz OAuth 2.0, aby zalogować się do interfejsu API dla programistów Google (zapewnienie, że używasz do zakresu YouTube: https://www.googleapis.com/auth/youtube). Dzieje się tak, ponieważ potrzebujesz access_token, aby załadować określone dane użytkownika.

Krok drugi

channels list API można znaleźć za pośrednictwem kanałów: nazwa użytkownika, ID kanału, itd ... Ciąg ID jest nie jednak wymagane. Zamiast tego możesz ustawić parametr boolowski mine na true, aby uzyskać kanały YouTube należące do określonego użytkownika Google (nie musisz podawać identyfikatora użytkownika Google, ponieważ access_token pozwala YouTube wiedzieć, który użytkownik próbuje załaduj dane).

Aby korzystać z API, dokonać zamówienia za pomocą następującego adresu URL (w zastępstwie 'YOUR_ACCESS_TOKEN_HERE' Twoje access_token):

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

Oto odpowiedź JSON że dostaniesz :

{ 
"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" 
    } 
    } 
] 
} 

Odpowiedź JSON zawiera szczegółowe informacje o użytkowniku s kanał zawierający identyfikator kanału. Następnie możesz użyć identyfikatora kanału (w połączeniu z innymi interfejsami API YouTube), aby wczytać filmy/listy odtwarzania/aktywności kanału/etc ...