Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Questa guida rapida spiega come configurare un'applicazione da riga di comando Python semplice che effettua richieste all'API YouTube Data. Questa
guida rapida spiega come effettuare due richieste API:
Utilizzerai una chiave API, che identifica la tua applicazione, per
recuperare informazioni sul canale YouTube GoogleDevelopers.
Utilizzerai un ID client OAuth 2.0 per inviare una richiesta autorizzata
che recupera informazioni sul tuo canale YouTube.
Prerequisiti
Per eseguire questa guida rapida, devi disporre di:
Python 2.7 o Python 3.5+
Lo strumento di gestione pacchetti pip
Libreria client delle API di Google per Python:
pipinstall--upgradegoogle-api-python-client
Le librerie google-auth-oauthlib e google-auth-httplib2 per l'autorizzazione
degli utenti.
Crea una chiave API
Utilizzerai la chiave API per effettuare richieste API che non richiedono l'autorizzazione dell'utente. Ad esempio, non è necessaria l'autorizzazione
dell'utente per recuperare informazioni su un canale YouTube pubblico.
Crea un ID client OAuth 2.0
Imposta il tipo di applicazione su Altro. Devi utilizzare le credenziali OAuth 2.0
per le richieste che richiedono l'autorizzazione dell'utente. Ad esempio,
hai bisogno dell'autorizzazione dell'utente per recuperare informazioni sul canale YouTube dell'utente attualmente autenticato.
Scarica il file JSON contenente le credenziali OAuth 2.0. Il file ha un nome come client_secret_CLIENTID.json, dove CLIENTID è
l'ID client del tuo progetto.
Passaggio 2: configura ed esegui l'esempio
Utilizza il widget Explorer API nel riquadro laterale per ottenere un codice di esempio per
recuperare informazioni sul canale YouTube GoogleDevelopers. Questa richiesta
utilizza una chiave API per identificare l'applicazione e non richiede l'autorizzazione dell'utente o autorizzazioni speciali da parte dell'utente che esegue l'esempio.
Apri la documentazione del metodo
channels.list dell'API.
In questa pagina, la sezione "Casi d'uso comuni" contiene una tabella che spiega
diversi modi comuni in cui viene utilizzato il metodo. Il primo elenco nella tabella
riguarda i risultati degli elenchi per ID canale.
Fai clic sul simbolo del codice per il primo elenco per aprire e compilare
Explorer API a schermo intero.
Il lato sinistro di Explorer API a schermo intero mostra quanto segue:
Sotto l'intestazione Parametri della richiesta, è presente un elenco di parametri
supportati dal metodo. I valori dei parametri part e id devono
essere impostati. Il valore del parametro id, UC_x5XG1OV2P6uZZ5FSM9Ttw, è l'ID del canale YouTube GoogleDevelopers.
Sotto i parametri, c'è una sezione denominata Credenziali. Il
menu a discesa in questa sezione dovrebbe mostrare il valore Chiave API. L'API Explorer utilizza le credenziali demo per impostazione predefinita per semplificare l'inizio. Tuttavia, utilizzerai la tua chiave API per eseguire l'esempio in locale.
Il lato destro di Explorer API a schermo intero mostra schede con esempi di codice
in diverse lingue. Seleziona la scheda Python.
Copia il codice di esempio e salvalo in un file denominato
example.py.
Nell'esempio che hai scaricato, trova la stringa YOUR_API_KEY e
sostituiscila con la chiave API che hai creato nel passaggio 1 di questa guida rapida.
Esegui l'esempio dalla riga di comando. Nella directory di lavoro, esegui:
python example.py
L'esempio deve eseguire la richiesta e stampare la risposta in STDOUT.
Passaggio 3: esegui una richiesta autorizzata
In questo passaggio, modificherai l'esempio di codice in modo che, anziché recuperare
informazioni sul canale YouTube GoogleDevelopers, recuperi informazioni
sul tuo canale YouTube. Questa richiesta richiede l'autorizzazione dell'utente.
Torna alla documentazione del metodo
channels.list dell'API.
Nella sezione "Casi d'uso comuni", fai clic sul simbolo del codice per la terza
voce dell'elenco nella tabella. Questo caso d'uso consiste nel chiamare il metodo list per "il mio
canale".
Anche in questo caso, sul lato sinistro di APIs Explorer a schermo intero, vedrai un elenco di parametri seguito dalla sezione Credenziali. Tuttavia, ci sono due modifiche rispetto all'esempio in cui hai recuperato informazioni sul canale GoogleDevelopers:
Nella sezione dei parametri, anziché impostare il valore del parametro id, il valore del parametro mine deve essere impostato su true. In questo modo
il server API recupera le informazioni sul canale dell'utente
attualmente autenticato.
Nella sezione Credenziali, il menu a discesa dovrebbe selezionare l'opzione per Google OAuth 2.0.
Inoltre, se fai clic sul link Mostra ambiti, l'ambito
https://www.googleapis.com/auth/youtube.readonly deve essere
selezionato.
Come nell'esempio precedente, seleziona la scheda Python,
copia il campione di codice e salvalo in example.py.
Nel codice, trova la stringa YOUR_CLIENT_SECRET_FILE.json e sostituiscila
con la posizione del file del segreto client che hai scaricato nel passaggio 1
di questa guida rapida.
Esegui l'esempio dalla riga di comando. Nella directory di lavoro, esegui:
python example.py
Copia l'URL dalla console e aprilo nel browser.
Se non hai ancora eseguito l'accesso al tuo Account Google, ti verrà chiesto di farlo. Se hai eseguito l'accesso a più Account Google, ti verrà chiesto di selezionarne uno da utilizzare per l'autorizzazione.
Fai clic sul pulsante per concedere alla tua applicazione l'accesso agli ambiti specificati
nell'esempio di codice.
Copia il codice di autenticazione dal browser e incollalo nel terminale. Puoi
quindi chiudere la scheda del browser utilizzata per il flusso di autenticazione.
La risposta API deve essere stampata di nuovo in STDOUT.
[null,null,["Ultimo aggiornamento 2025-08-21 UTC."],[[["\u003cp\u003eThis guide walks through setting up a Python command-line application to interact with the YouTube Data API.\u003c/p\u003e\n"],["\u003cp\u003eYou'll learn how to use an API key to retrieve public information, such as details about the GoogleDevelopers YouTube channel.\u003c/p\u003e\n"],["\u003cp\u003eThe guide also covers using OAuth 2.0 for authorized requests, enabling you to retrieve information about your own YouTube channel.\u003c/p\u003e\n"],["\u003cp\u003ePrerequisites include Python 2.7 or 3.5+, \u003ccode\u003epip\u003c/code\u003e, the Google APIs Client Library for Python, and the \u003ccode\u003egoogle-auth-oauthlib\u003c/code\u003e and \u003ccode\u003egoogle-auth-httplib2\u003c/code\u003e libraries.\u003c/p\u003e\n"],["\u003cp\u003eThe process includes setting up your project in the API Console, creating an API key and OAuth 2.0 credentials, and running sample code to make API requests.\u003c/p\u003e\n"]]],["This guide demonstrates using the YouTube Data API with Python. It covers two core actions: retrieving channel information using an API key and making an authorized request for your own channel data using OAuth 2.0. Key steps include setting up a project in the API Console, enabling the YouTube Data API, creating an API key and OAuth 2.0 credentials. The guide provides instructions for running code samples that retrieve information, replacing placeholder strings with personal credentials, and completing user authorization in the browser.\n"],null,["# Python Quickstart\n\nThis quickstart guide explains how to set up a simple, Python\ncommand-line application that makes requests to the YouTube Data API. This\nquickstart actually explains how to make two API requests:\n\n1. You will use an API key, which identifies your application, to retrieve information about the GoogleDevelopers YouTube channel.\n2. You will use an OAuth 2.0 client ID to submit an *authorized* request that retrieves information about your own YouTube channel.\n\n| **Note:** More generally, you can follow the instructions for the first example for any use case that uses an API key or the instructions for the second example for any use case that requires authorization using OAuth 2.0. See the [use cases and code samples tool](/youtube/v3/code_samples/code_snippets) for more examples.\n\nPrerequisites\n-------------\n\nTo run this quickstart, you'll need:\n\n- Python 2.7 or Python 3.5+\n\n- The `pip` package management tool\n\n- The Google APIs Client Library for Python:\n\n pip install --upgrade google-api-python-client\n\n- The `google-auth-oauthlib` and `google-auth-httplib2` libraries for user\n authorization.\n\n pip install --upgrade google-auth-oauthlib google-auth-httplib2\n\nStep 1: Set up your project and credentials\n-------------------------------------------\n\nCreate or select a project in the [API Console](https://console.cloud.google.com/). Complete the following tasks in the API Console for your project:\n\n1. In the [library panel](https://console.developers.google.com/apis/library),\n search for the YouTube Data API v3. Click into the listing for that API and\n make sure the API is enabled for your project.\n\n2. In the [credentials\n panel](https://console.developers.google.com/apis/credentials),\n create two credentials:\n\n 1. **Create an API key**\n You will use the API key to make API requests that do\n not require user authorization. For example, you do not need user\n authorization to retrieve information about a public YouTube channel.\n\n 2. **Create an OAuth 2.0 client ID**\n\n Set the application type to **Other**. You need to use OAuth 2.0\n credentials for requests that require user authorization. For example,\n you need user authorization to retrieve information about the currently\n authenticated user's YouTube channel.\n\n Download the JSON file that contains your OAuth 2.0 credentials. The\n file has a name like `client_secret_CLIENTID.json`, where `CLIENTID` is\n the client ID for your project.\n\nStep 2: Set up and run the sample\n---------------------------------\n\nUse the APIs Explorer widget in the side panel to obtain sample code for\nretrieving information about the GoogleDevelopers YouTube channel. This request\nuses an API key to identify your application, and it does not require user\nauthorization or any special permissions from the user running the sample.\n\n1. Open the documentation for the API's [channels.list](/youtube/v3/docs/channels/list) method.\n2. On that page, the \"Common use cases\" section contains a table that explains\n several common ways that the method is used. The first listing in the table\n is for listing results by channel ID.\n\n Click the code symbol for the first listing to open and populate the\n fullscreen APIs Explorer.\n\n3. The left side of the fullscreen APIs Explorer shows the following:\n\n 1. Below the **Request parameters** header, there is a list of parameters\n that the method supports. The `part` and `id` parameter values should\n be set. The `id` parameter value, `UC_x5XG1OV2P6uZZ5FSM9Ttw`, is the\n ID for the GoogleDevelopers YouTube channel.\n\n 2. Below the parameters, there is a section named **Credentials** . The\n pulldown menu in that section should display the value **API key**. The\n APIs Explorer uses demo credentials by default to make it easier to get\n started. But you'll use your own API key to run the sample locally.\n\n4. The right side of the fullscreen APIs Explorer shows tabs with code samples\n in different languages. Select the **Python** tab.\n\n5. Copy the code sample and save it in a file named\n `example.py`.\n\n6. In the sample that you downloaded, find the `YOUR_API_KEY` string and\n replace that with the API key that you created in step 1 of this quickstart.\n\n7. Run the sample from the command line. In your working directory, run:\n\n\n `python example.py`\n8. The sample should execute the request and print the response to `STDOUT`.\n\nStep 3: Run an authorized request\n---------------------------------\n\nIn this step, you'll modify your code sample so that instead of retrieving\ninformation about the GoogleDevelopers YouTube channel, it retrieves information\nabout *your* YouTube channel. This request does require user authorization.\n\n1. Go back to the documentation for the API's\n [channels.list](/youtube/v3/docs/channels/list) method.\n\n2. In the \"Common use cases\" section, click the code symbol for the third\n listing in the table. That use case is to call the `list` method for \"my\n channel.\"\n\n3. Again, in the left side of the fullscreen APIs Explorer, you will see a\n list of parameters followed by the **Credentials** section. However, there\n are two changes from the example where you retrieved information about the\n GoogleDevelopers channel:\n\n 1. In the parameters section, instead of the `id` parameter value being\n set, the `mine` parameter value should be set to `true`. This instructs\n the API server to retrieve information about the currently authenticated\n user's channel.\n\n 2. In the **Credentials** section, the pulldown menu should select the\n option for **Google OAuth 2.0**.\n\n In addition, if you click the **Show scopes** link, the\n **https://www.googleapis.com/auth/youtube.readonly** scope should be\n checked.\n\n4. As with the previous example, select the **Python** tab,\n copy the code sample, and save it to `example.py`.\n\n\n In the code, find the `YOUR_CLIENT_SECRET_FILE.json` string and replace\n it with the location of the client secret file you downloaded in step 1\n of this quickstart.\n5. Run the sample from the command line. In your working directory, run:\n\n\n `python example.py`\n6. \u003cbr /\u003e\n\n\n Copy the URL from the console and open it in your browser.\n\n If you are not already logged into your Google account, you will be\n prompted to log in. If you are logged into multiple Google accounts, you\n will be asked to select one account to use for the authorization.\n7. Click the button to grant your application access to the scopes specified in\n your code sample.\n\n8. \u003cbr /\u003e\n\n\n Copy the auth code from the browser and paste it into your terminal. You can\n then close the browser tab used for the auth flow.\n\n The API response should again be printed to `STDOUT`.\n\nFurther reading\n---------------\n\n- [Google Developers Console help documentation](/console/help/new)\n- [Google APIs Client Library for Python documentation](/api-client-library/python)\n- [YouTube Data API PyDoc documentation](https://developers.google.com/resources/api-libraries/documentation/youtube/v3/python/latest/)\n- [YouTube Data API reference documentation](/youtube/v3/docs)"]]