# AI-Crawler

## Resumen

[**AI-Crawler**](https://aistudio.oxylabs.io/apps/crawl) es una aplicación de extracción de datos que utiliza algoritmos avanzados de IA para rastrear un dominio dado. Identifica páginas relevantes basándose en un prompt en lenguaje natural y extrae datos estructurados **JSON** o **Markdown** de salida.

Esta herramienta de bajo código está diseñada para simplificar tareas complejas de adquisición de datos, permitiendo que desarrolladores y científicos de datos se concentren en el análisis en lugar de construir y mantener rastreadores web personalizados. El rastreador web con IA ofrece filtrado avanzado, análisis basado en esquemas e integración fluida con diversas canalizaciones de automatización.

Puedes previsualizar la herramienta [**aquí**](https://aistudio.oxylabs.io/apps/crawl) e integrarla en tus flujos de trabajo mediante nuestros SDKs de Python/JavaScript, el servidor MCP o una de nuestras integraciones de terceros.

## Funciones clave

* **Inicia un rastreo desde cualquier URL dada:** Comienza tu extracción de datos desde cualquier dirección web válida usando el AI Crawler como punto de partida.
* **Prompt en lenguaje natural:** Define tus necesidades de datos en inglés claro, y el agente de rastreo interpretará el prompt para encontrar contenido relevante.
* **Selección de URL asistida por IA:** El rastreador web con IA explora el sitio de manera inteligente, identificando y priorizando las páginas más alineadas con tu prompt.
* **Múltiples formatos de salida:** Elige entre salida JSON estructurada o Markdown para una integración fluida en automatizaciones o flujos de trabajo de IA.
* **Análisis basado en esquemas:** Para salida JSON, puedes definir un esquema en lenguaje natural para asegurar que los datos extraídos estén estructurados según tu aplicación.

## Usage

Para comenzar con el AI Crawler, sigue este proceso de cuatro pasos:

1. **Proporciona una URL de inicio** del sitio web que deseas que el rastreador explore.
2. **Describe el contenido** que deseas recuperar usando un prompt en lenguaje natural para el agente de rastreo.
3. **Selecciona el formato de salida.** Elige entre JSON estructurado o Markdown.
4. **Si usas salida JSON,** proporciona un esquema para guiar al rastreador web con IA en el análisis y la estructuración de los datos extraídos.

### Instalación

Para empezar, asegúrate de tener acceso a una clave de API (o [obtén una prueba gratuita](https://aistudio.oxylabs.io/register) con **1,000 credits**) y `Python 3.10+` instalado. Puedes instalar el `oxylabs-ai-studio` paquete usando pip:

```sh
pip install oxylabs-ai-studio
```

### Ejemplos de código (Python)

Los siguientes ejemplos muestran cómo usar el `AiCrawler` para realizar tareas comunes de rastreo.

```python
from oxylabs_ai_studio.apps.ai_crawler import AiCrawler
import json

# Initialize the AI Crawler with your API key
crawler = AiCrawler(api_key="your_api_key")

# Generate a schema automatically from natural language
schema = crawler.generate_schema(prompt="want to parse name, platform, price")
print(f"Esquema generado: {schema}")

# Crawl a website and extract structured data
url = "https://sandbox.oxylabs.io/products"
result = crawler.crawl(
    url=url,
    user_prompt="Find all Halo games for Xbox",
    output_format="json",
    schema=schema,
    render_javascript=False,
    return_sources_limit=3,
    geo_location="US",
)

# Print the crawl output as JSON
print("Resultados:")
print(json.dumps(result.data, indent=2))
```

Aprende más sobre AI-Crawler y el SDK de Python de Oxylabs AI Studio en nuestro [repositorio PyPI](https://pypi.org/project/oxylabs-ai-studio/). También puedes consultar nuestro [SDK de JavaScript de AI Studio](https://github.com/oxylabs/oxylabs-ai-studio-js) guía para usuarios de JS.

### Parámetros de la solicitud

| Parámetro              | Descripción                                                          | Valor predeterminado |
| ---------------------- | -------------------------------------------------------------------- | -------------------- |
| `url`\*                | URL inicial para rastrear                                            | –                    |
| `user_prompt`\*        | Prompt en lenguaje natural para guiar la extracción                  | –                    |
| `output_format`        | Formato de salida (`json`, `markdown`)                               | `markdown`           |
| `schema`               | Esquema OpenAPI para extracción estructurada (obligatorio para JSON) | –                    |
| `render_javascript`    | Habilitar renderizado de JavaScript                                  | `False`              |
| `return_sources_limit` | Número máximo de fuentes a devolver                                  | `25`                 |
| `geo_location`         | Ubicación del proxy en formato ISO2                                  | –                    |

`*` – parámetros obligatorios

#### Ejemplos de salida

`AI-Crawler` puede devolver salida analizada y lista para usar que es fácil de integrar en tus aplicaciones.

Así es como se ve su salida JSON:

```json
[
  {
    "data": {
      "items": [
        {
          "name": "Halo: Reach",
          "platform": "Xbox platform",
          "price": 84.99
        }
      ]
    },
    "src": "https://sandbox.oxylabs.io/products/141"
  },
  {
    "data": {
      "items": [
        {
          "name": "Halo 3",
          "platform": "Xbox platform",
          "price": 81.99
        }
      ]
    },
    "src": "https://sandbox.oxylabs.io/products/28"
  },
  {
    "data": {
      "items": [
        {
          "name": "Halo: Combat Evolved",
          "platform": "Xbox platform",
          "price": 87.99
        }
      ]
    },
    "src": "https://sandbox.oxylabs.io/products/6"
  }
]
```

Alternativamente, puedes usar `output_format=”markdown”` para recibir resultados en Markdown en lugar de JSON analizado.

### Casos de uso prácticos

AI-Crawler es una herramienta versátil para una amplia gama de aplicaciones, incluyendo:

1. **Encontrar páginas de términos de servicio:** Localiza rápidamente páginas legales y de políticas en un dominio.
2. **Recopilar páginas de precios:** Recopila detalles de precios para análisis de competidores o investigación de mercado.
3. **Recuperar todas las páginas “Acerca de”:** Encuentra y extrae automáticamente información de la empresa de una lista de sitios web.
4. **Listar artículos de noticias relacionados con IA:** Rastrea un sitio de noticias para recopilar y archivar artículos sobre un tema específico.

<br>
