> For the complete documentation index, see [llms.txt](https://developers.oxylabs.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.oxylabs.io/api-targets/es/video-y-redes-sociales/youtube/youtube-scraping-guide-for-ai.md).

# Guía de scraping para IA

Esta guía te guiará por el flujo de trabajo para recopilar y filtrar datos de YouTube para fines de entrenamiento de IA usando [**las fuentes especializadas de Web Scraper API**](https://oxylabs.io/products/scraper-api/web/youtube): `youtube_search`, `youtube_video_trainability`, `youtube_metadata`, `youtube_download`, `youtube_subtitles`.

## Paso 1: Buscar videos

Comienza buscando videos relacionados con tu tema de interés.

### Búsqueda básica

Para una búsqueda rápida que devuelve hasta 20 resultados:

```json
{
  "source": "youtube_search",
  "query": "término de búsqueda"
}
```

### Búsqueda ampliada

Para resultados más completos (hasta 700 resultados):

```json
{
  "source": "youtube_search_max",
  "query": "término de búsqueda"
}
```

### Búsqueda con filtros

Refina tu búsqueda con filtros:

```json
{
  "source": "youtube_search",
  "query": "término de búsqueda",
  "type": "video",
  "duration": "4-20",
  "upload_date": "this_month",
  "sort_by": "view_count",
  "hd": true
}
```

{% hint style="info" %}
Usa los filtros adecuados para reducir los resultados según tus necesidades específicas. Las opciones incluyen tipo de contenido (video, canal, lista de reproducción), duración, fecha de subida y ajustes de calidad.
{% endhint %}

## Paso 2: Extraer los IDs de video de los resultados de búsqueda

Después de recibir los resultados de búsqueda, extrae los **IDs de video** para su procesamiento posterior. En la respuesta de `youtube_search` o `youtube_search_max`, los IDs de video están disponibles directamente en el `videoId` campo de cada elemento de resultado, como se muestra en este fragmento de respuesta de ejemplo:

```json
{
    "results": [
        {
            "content": [
                {
                    "videoId": "LK9XuImr8Xg",  // Este es el ID de video que necesitas
                    "thumbnail": {
                        "thumbnails": [
                            {
                                "url": "https://i.ytimg.com/vi/LK9XuImr8Xg/hq720_2.jpg?sqp=-oaymwE2COgCEMoBSFXyq4qpAygIARUAAIhCGABwAcABBvABAfgBtgiAAoAPigIMCAAQARhaIGUoLTAP&rs=AOn4CLDTvqEgoE2ZNfnn3EalF2ujcthVNw",
                                "width": 360,
                                "height": 202
                            }
                        ]
                    },
                    "title": {
                        // detalles del título
                    }
                }
            ]
        }
    ]
}
```

Extrae estos IDs de video en una lista para usarlos en llamadas posteriores a la API.

## Paso 3: Verificar la elegibilidad para entrenamiento de IA

Antes de descargar o usar videos para entrenamiento de IA, verifica su elegibilidad:

```json
{
  "source": "youtube_video_trainability",
  "video_id": "rFNDylrjn_w"
}
```

La respuesta indicará si el video puede usarse para fines de entrenamiento de IA:

* `["all"]` - Entrenamiento permitido para todas las partes
* `["none"]` - No se permite entrenamiento para ninguna parte
* `["party1", "party2", ...]` - Entrenamiento permitido solo para partes específicas

## Paso 4: Obtener metadatos del video&#x20;

Recopila información adicional sobre los videos para evaluar mejor su calidad y relevancia:

```json
{
  "source": "youtube_metadata",
  "query": "VIDEO_ID",
  "parse": true
}
```

La respuesta contendrá metadatos como conteos de vistas, comentarios, calificaciones y otras métricas que pueden ayudarte a evaluar la calidad del contenido.

{% hint style="success" %}
El `parse` parámetro debe establecerse en `true` para la fuente de metadatos.
{% endhint %}

## Paso 5: Recuperar contenido de los videos seleccionados

Después de identificar videos de alta calidad y aptos para entrenamiento según su elegibilidad y metadatos, puedes proceder con la recuperación del contenido. Esto puede hacerse en dos pasos paralelos:

### 5.1 Descargar contenido de video/audio

```json
{
  "source": "youtube_download",
  "query": "VIDEO_ID",
  "storage_type": "s3",
  "storage_url": "s3://your-bucket/your-folder/"
}
```

Opciones adicionales para la descarga:

```json
{
  "source": "youtube_download",
  "query": "VIDEO_ID",
  "storage_type": "s3",
  "storage_url": "s3://your-bucket/your-folder/",
  "context": [
    {
      "key": "download_type",
      "value": "video"
    },
    {
      "key": "video_quality",
      "value": "1080"
    }
  ]
}
```

{% hint style="info" %}
Esta fuente solo está disponible mediante la integración asíncrona de [**Push-Pull**](/products/es/web-scraper-api/integration-methods/push-pull.md) y la función de [**Cloud Storage**](/products/es/web-scraper-api/features/result-processing-and-storage/cloud-storage.md) .
{% endhint %}

**Nota:**

* Los videos pueden durar hasta 3 horas
* La resolución predeterminada es 720p (se puede personalizar)
* Puedes especificar solo audio, solo video o ambos

### 5.2 Obtener subtítulos del video

#### **Comprobar si un video tiene subtítulos (manualmente):**

En YouTube, haz clic en el **CC** icono debajo del video para activar los subtítulos/captions.&#x20;

Si quieres seleccionar subtítulos en un idioma específico, busca el **Settings** icono junto al **CC** icono, haz clic y ve a **"Subtitles/CC"** en las opciones. Allí encontrarás **Auto-translate**, haz clic allí y te llevará a la lista de idiomas.

Si los subtítulos están disponibles, puedes obtenerlos con:

```json
{
  "source": "youtube_subtitles",
  "query": "VIDEO_ID",
  "context": [
    {
      "key": "language_code",
      "value": "en"
    }
  ]
}
```

Para videos con subtítulos creados manualmente, especifica:

```json
{
    "source": "youtube_subtitles",
    "query": "VIDEO_ID",
    "context": [
        {
            "key": "language_code",
            "value": "en"
        },
        {
            "key": "subtitle_origin",
            "value": "uploader_provided"
        }
    ]
}
```

## Procesamiento por lotes

Para procesar varios videos de forma eficiente, usa endpoints por lotes:

```json
{
  "source": "youtube_video_trainability",
  "query": ["VIDEO_ID_1", "VIDEO_ID_2", "VIDEO_ID_3"]
}
```

## Mejores prácticas

1. Sigue el flujo de descubrimiento desde **búsqueda → trainability → metadata → content** para maximizar la eficiencia
2. Reduce los resultados de búsqueda antes de procesar videos individuales
3. Verifica siempre la trainability antes de usar contenido para IA
4. Comprueba [**códigos de respuesta**](/products/es/web-scraper-api/response-codes.md) e implementa reintentos para solicitudes fallidas


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.oxylabs.io/api-targets/es/video-y-redes-sociales/youtube/youtube-scraping-guide-for-ai.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
