
Scraper de Python basado en IA
## 🚀 **¿Buscas una forma aún más rápida y sencilla de hacer scraping a escala (solo 5 líneas de código)?** ¡Echa un vistazo a nuestra versión mejorada en [**ScrapeGraphAI.com**](https://scrapegraphai.com/?utm_source=github&utm_medium=readme&utm_campaign=oss_cta&ut#m_content=top_banner)! 🚀
---
# 🕷️ ScrapeGraphAI: Solo Scrapeas Una Vez
<p align="center">
<a href="https://scrapegraphai.com">
<img src="https://assets.kitploit.com/production/public/readmes/41478/e11a555115b80e07241afdb0aec04ee9fae66f983d969d27fbd8a64a21f090de.png" alt="ScrapeGraphAI" style="width: 100%;">
</a>
</p>
[English](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/README.md) | [中文](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/chinese.md) | [日本語](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/japanese.md)
| [한국어](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/korean.md)
| [Русский](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/russian.md) | [Türkçe](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/turkish.md)
| [Deutsch](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/german.md)
| [Español](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/spanish.md)
| [français](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/french.md)
| [Português](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/portuguese.md)
| [Italiano](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/italian.md)
[](https://pepy.tech/projects/scrapegraphai)
[](https://opensource.org/licenses/MIT)
[](https://discord.gg/gkxQDAjfeX)
<p align="center">
<a href="https://trendshift.io/repositories/15078" target="_blank"><img src="https://trendshift.io/api/badge/repositories/15078" alt="ScrapeGraphAI%2FScrapegraph-ai | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
<p align="center">
[ScrapeGraphAI](https://scrapegraphai.com) es una librería de *web scraping* en Python que utiliza LLM y lógica de grafos directa para crear pipelines de scraping para sitios web y documentos locales (XML, HTML, JSON, Markdown, etc.).
¡Solo di qué información quieres extraer y la librería lo hará por ti!
## 🚀 Integraciones
ScrapeGraphAI ofrece una integración fluida con frameworks y herramientas populares para mejorar tus capacidades de scraping. Ya sea que estés construyendo con Python o Node.js, usando frameworks LLM, o trabajando con plataformas sin código, tenemos todo cubierto con nuestras opciones de integración integrales.
<p align="center">
<a href="https://scrapegraphai.com">
<img src="https://assets.kitploit.com/production/public/readmes/41478/0e788431fde2dc01cf2aa4b53d87b9befe3c728b719a5a45dec11ffb4d7c77a5.png" alt="Web data extraction at scale? Try ScrapeGraphAI cloud" style="width: 100%;">
</a>
</p>
Puedes encontrar más información en el siguiente [enlace](https://scrapegraphai.com)
**Integraciones**:
- **API**: [Documentación](https://docs.scrapegraphai.com/introduction)
- **SDKs**: [Python](https://docs.scrapegraphai.com/sdks/python), [Node](https://docs.scrapegraphai.com/sdks/javascript)
- **Frameworks LLM**: [Langchain](https://docs.scrapegraphai.com/integrations/langchain), [Llama Index](https://docs.scrapegraphai.com/integrations/llamaindex), [Crew.ai](https://docs.scrapegraphai.com/integrations/crewai), [Agno](https://docs.scrapegraphai.com/integrations/agno), [CamelAI](https://github.com/camel-ai/camel)
- **Frameworks Low-code**: [Pipedream](https://pipedream.com/apps/scrapegraphai), [Bubble](https://bubble.io/plugin/scrapegraphai-1745408893195x213542371433906180), [Zapier](https://zapier.com/apps/scrapegraphai/integrations), [n8n](http://localhost:5001/dashboard), [Dify](https://dify.ai), [Toolhouse](https://app.toolhouse.ai/mcp-servers/scrapegraph_smartscraper)
- **Servidor MCP**: [Enlace](https://smithery.ai/server/@ScrapeGraphAI/scrapegraph-mcp)
## 🚀 Instalación rápida
La página de referencia de Scrapegraph-ai está disponible en la página oficial de PyPI: [pypi](https://pypi.org/project/scrapegraphai/).
```bash
pip install scrapegraphai
# IMPORTANT (for fetching websites content)
playwright install
```
**Nota**: se recomienda instalar la librería en un entorno virtual para evitar conflictos con otras librerías 🐱
## 💻 Uso
Hay múltiples pipelines de scraping estándar que se pueden usar para extraer información de un sitio web (o archivo local).
El más común es `SmartScraperGraph`, que extrae información de una sola página dado un prompt de usuario y una URL de origen.
```python
from scrapegraphai.graphs import SmartScraperGraph
# Define the configuration for the scraping pipeline
graph_config = {
"llm": {
"model": "ollama/llama3.2",
"model_tokens": 8192,
"format": "json",
},
"verbose": True,
"headless": False,
}
# Create the SmartScraperGraph instance
smart_scraper_graph = SmartScraperGraph(
prompt="Extract useful information from the webpage, including a description of what the company does, founders and social media links",
source="https://scrapegraphai.com/",
config=graph_config
)
# Run the pipeline
result = smart_scraper_graph.run()
import json
print(json.dumps(result, indent=4))
```
> [!NOTE]
> Para OpenAI y otros modelos solo necesitas cambiar la configuración del LLM!
> ```python
>graph_config = {
> "llm": {
> "api_key": "YOUR_OPENAI_API_KEY",
> "model": "openai/gpt-4o-mini",
> },
> "verbose": True,
> "headless": False,
>}
>```
La salida será un diccionario como el siguiente:
```python
{
"description": "ScrapeGraphAI transforms websites into clean, organized data for AI agents and data analytics. It offers an AI-powered API for effortless and cost-effective data extraction.",
"founders": [
{
"name": "",
"role": "Founder & Technical Lead",
"linkedin": "https://www.linkedin.com/in/perinim/"
},
{
"name": "Marco Vinciguerra",
"role": "Founder & Software Engineer",
"linkedin": "https://www.linkedin.com/in/marco-vinciguerra-7ba365242/"
},
{
"name": "Lorenzo Padoan",
"role": "Founder & Product Engineer",
"linkedin": "https://www.linkedin.com/in/lorenzo-padoan-4521a2154/"
}
],
"social_media_links": {
"linkedin": "https://www.linkedin.com/company/101881123",
"twitter": "https://x.com/scrapegraphai",
"github": "https://github.com/ScrapeGraphAI/Scrapegraph-ai"
}
}
```
Hay otros pipelines que se pueden usar para extraer información de múltiples páginas, generar scripts de Python, o incluso generar archivos de audio.
| Nombre del Pipeline | Descripción |
|-------------------------|------------------------------------------------------------------------------------------------------------------|
| SmartScraperGraph | Scraper de una sola página que solo necesita un prompt de usuario y una fuente de entrada. |
| SearchGraph | Scraper de múltiples páginas que extrae información de los primeros n resultados de búsqueda de un motor de búsqueda. |
| SpeechGraph | Scraper de una sola página que extrae información de un sitio web y genera un archivo de audio. |
| ScriptCreatorGraph | Scraper de una sola página que extrae información de un sitio web y genera un script de Python. |
| SmartScraperMultiGraph | Scraper de múltiples páginas que extrae información de varias páginas dado un solo prompt y una lista de fuentes. |
| ScriptCreatorMultiGraph | Scraper de múltiples páginas que genera un script de Python para extraer información de varias páginas y fuentes. |
Para cada uno de estos grafos existe la versión multi. Permite hacer llamadas al LLM en paralelo.
Es posible usar diferentes LLM a través de APIs, como **OpenAI**, **Groq**, **Azure**, **Gemini**, **[MiniMax](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/minimax.md)** y más, o modelos locales usando **Ollama**.
Recuerda tener [Ollama](https://ollama.com/) instalado y descargar los modelos usando el comando **ollama pull**, si quieres usar modelos locales.
## 📖 Documentación
[](https://colab.research.google.com/drive/1sEZBonBMGP44CtO6GQTwAlL0BGJXjtfd?usp=sharing)
La documentación de ScrapeGraphAI se puede encontrar [aquí](https://docs.scrapegraphai.com/introduction).
## 🆚 Código Abierto vs API Gestionada
ScrapeGraphAI viene en dos sabores: **esta librería de código abierto**, que ejecutas tú mismo, y la **API gestionada en la nube** (usada a través de los SDKs de [Python](https://github.com/ScrapeGraphAI/scrapegraph-py) y [JS/TS](https://github.com/ScrapeGraphAI/scrapegraph-js)). Esta tabla explica la diferencia para que puedas elegir la correcta.
| | Código Abierto (`scrapegraphai`) | API Gestionada (`scrapegraph-py` / `scrapegraph-js`) |
|---|---|---|
| **Qué es** | Una librería de Python que ejecutas tú mismo | Un servicio cloud alojado al que llamas vía SDK |
| **Dónde se ejecuta** | Tu propia infraestructura (auto-alojado) | Nube de ScrapeGraphAI |
| **LLM** | Trae el tuyo propio (OpenAI, Groq, Gemini, Azure, local vía Ollama) | Gestionado por nosotros |
| **Renderizado de navegador/JS** | Tú lo configuras (Playwright) | Gestionado (modos stealth, `auto`/`fast`/`js`) |
| **Proxies y anti-bot** | Tu responsabilidad | Incluido |
| **Escalado y mantenimiento** | Tu responsabilidad | Totalmente gestionado |
| **Modelo de coste** | Tokens LLM + tu propia infra | Créditos de pago por uso |
| **Autenticación** | Tus propias claves LLM | `SGAI_API_KEY` |
| **Capacidades** | Pipelines de grafo (SmartScraper, Search, Speech, ScriptCreator…) | Scrape, Extract, Search, Crawl, Monitor, History |
| **Esfuerzo de configuración** | Más configuración | Mínimo — clave API + una llamada |
| **Licencia** | MIT | El SDK es MIT; el servicio API es de pago |
**Elige la librería de código abierto** si quieres control total, datos on-premise/auto-alojados, LLMs locales (Ollama), o ajuste de costes detallado — y estás dispuesto a gestionar navegadores, proxies y escalado tú mismo.
**Elige la API gestionada** si quieres infraestructura cero, renderizado JS y anti-bot gestionados, trabajos integrados de **Crawl** y **Monitor** programados, y el camino más rápido a producción — facturado por crédito.
- Librería de código abierto: https://github.com/ScrapeGraphAI/Scrapegraph-ai
- SDK Python: https://github.com/ScrapeGraphAI/scrapegraph-py
- SDK JS/TS: https://github.com/ScrapeGraphAI/scrapegraph-js
- Documentación de la API: https://docs.scrapegraphai.com/introduction
## 🤝 Contribuciones
¡Siéntete libre de contribuir y únete a nuestro servidor de Discord para discutir con nosotros mejoras y darnos sugerencias!
Por favor, consulta las [guías de contribución](https://github.com/ScrapeGraphAI/Scrapegraph-ai/blob/main/CONTRIBUTING.md).
[](https://discord.gg/uJN7TYcpNa)
[](https://www.linkedin.com/company/scrapegraphai/)
[](https://twitter.com/scrapegraphai)
## 🔗 API y SDKs de ScrapeGraph
Si buscas una solución rápida para integrar ScrapeGraph en tu sistema, ¡echa un vistazo a nuestra potente API [aquí!](https://scrapegraphai.com)
[](https://scrapegraphai.com)
Ofrecemos SDKs tanto en Python como en Node.js, facilitando la integración en tus proyectos. Míralos a continuación:
| SDK | Lenguaje | Enlace de GitHub |
|-----------|----------|-----------------------------------------------------------------------------|
| Python SDK | Python | [scrapegraph-py](https://docs.scrapegraphai.com/sdks/python) |
| Node.js SDK | Node.js | [scrapegraph-js](https://docs.scrapegraphai.com/sdks/javascript) |
La Documentación Oficial de la API se puede encontrar [aquí](https://docs.scrapegraphai.com/introduction).
## 📈 Telemetría
Recopilamos métricas de uso anónimas para mejorar la calidad y experiencia de usuario de nuestro paquete. Los datos nos ayudan a priorizar mejoras y garantizar la compatibilidad. Si deseas optar por no participar, establece la variable de entorno SCRAPEGRAPHAI_TELEMETRY_ENABLED=false. Para más información, consulta la documentación [aquí](https://docs.scrapegraphai.com/introduction).
## ❤️ Contribuyentes
[](https://github.com/ScrapeGraphAI/Scrapegraph-ai/graphs/contributors)
## 🎓 Citas
Si has usado nuestra librería con fines de investigación, por favor cítanos con la siguiente referencia:
```text
@misc{scrapegraph-ai,
author = {Lorenzo Padoan, Marco Vinciguerra},
title = {Scrapegraph-ai},
year = {2024},
url = {https://github.com/ScrapeGraphAI/Scrapegraph-ai},
note = {A Python library for scraping leveraging large language models}
}
```
## Autores
| | Información de Contacto |
|--------------------|----------------------|
| Marco Vinciguerra | [](https://www.linkedin.com/in/marco-vinciguerra-7ba365242/) |
| Lorenzo Padoan | [](https://www.linkedin.com/in/lorenzo-padoan-4521a2154/) |
## 📜 Licencia
ScrapeGraphAI está licenciado bajo la Licencia MIT. Consulta el archivo [LICENSE](https://github.com/ScrapeGraphAI/Scrapegraph-ai/blob/main/LICENSE) para más información.
## Agradecimientos
- Nos gustaría agradecer a todos los contribuyentes del proyecto y a la comunidad de código abierto por su apoyo.
- ScrapeGraphAI está destinado a ser usado solo para fines de exploración de datos e investigación. No somos responsables de ningún uso indebido de la librería.
Hecho con ❤️ por [ScrapeGraph AI](https://scrapegraphai.com)
[Scarf tracking](https://static.scarf.sh/a.png?x-pxid=102d4b8c-cd6a-4b9e-9a16-d6d141b9212d)