
Scraper Python basato sull'AI
## 🚀 **Cerchi un modo ancora più veloce e semplice per fare scraping su larga scala (con solo 5 righe di codice)?** Dai un'occhiata alla nostra versione avanzata su [**ScrapeGraphAI.com**](https://scrapegraphai.com/?utm_source=github&utm_medium=readme&utm_campaign=oss_cta&ut#m_content=top_banner)! 🚀
---
# 🕷️ ScrapeGraphAI: fai scraping una sola volta
<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) è una libreria Python per il *web scraping* che utilizza LLM e logica a grafi diretti per creare pipeline di scraping per siti web e documenti locali (XML, HTML, JSON, Markdown, ecc.).
Dì semplicemente quali informazioni vuoi estrarre e la libreria lo farà per te!
## 🚀 Integrazioni
ScrapeGraphAI offre un'integrazione perfetta con framework e strumenti popolari per potenziare le tue capacità di scraping. Che tu stia sviluppando con Python o Node.js, utilizzando framework LLM o lavorando con piattaforme no-code, abbiamo ciò che fa per te con le nostre opzioni di integrazione complete.
<p align="center">
<a href="https://scrapegraphai.com">
<img src="https://assets.kitploit.com/production/public/readmes/41478/0e788431fde2dc01cf2aa4b53d87b9befe3c728b719a5a45dec11ffb4d7c77a5.png" alt="Estrazione di dati web su larga scala? Prova ScrapeGraphAI cloud" style="width: 100%;">
</a>
</p>
Puoi trovare maggiori informazioni al seguente [link](https://scrapegraphai.com)
**Integrazioni**:
- **API**: [Documentazione](https://docs.scrapegraphai.com/introduction)
- **SDK**: [Python](https://docs.scrapegraphai.com/sdks/python), [Node](https://docs.scrapegraphai.com/sdks/javascript)
- **Framework 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)
- **Framework 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)
- **Server MCP**: [Collegamento](https://smithery.ai/server/@ScrapeGraphAI/scrapegraph-mcp)
## 🚀 Installazione rapida
La pagina di riferimento per Scrapegraph-ai è disponibile sulla pagina ufficiale di PyPI: [pypi](https://pypi.org/project/scrapegraphai/).
```bash
pip install scrapegraphai
# IMPORTANT (for fetching websites content)
playwright install
```
**Nota**: si consiglia di installare la libreria in un ambiente virtuale per evitare conflitti con altre librerie 🐱
## 💻 Utilizzo
Esistono diverse pipeline di scraping standard che possono essere utilizzate per estrarre informazioni da un sito web (o da un file locale).
La più comune è `SmartScraperGraph`, che estrae informazioni da una singola pagina a partire da un prompt dell'utente e da un URL di origine.
```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]
> Per i modelli OpenAI e altri ti basta modificare la configurazione dell'LLM!
> ```python
>graph_config = {
> "llm": {
> "api_key": "YOUR_OPENAI_API_KEY",
> "model": "openai/gpt-4o-mini",
> },
> "verbose": True,
> "headless": False,
>}
>```
L'output sarà un dizionario come il seguente:
```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"
}
}
```
Esistono altre pipeline che possono essere utilizzate per estrarre informazioni da più pagine, generare script Python o persino generare file audio.
| Nome pipeline | Descrizione |
|-------------------------|------------------------------------------------------------------------------------------------------------------|
| SmartScraperGraph | Scraper a pagina singola che richiede solo un prompt dell'utente e una sorgente di input. |
| SearchGraph | Scraper multipagina che estrae informazioni dai primi n risultati di ricerca di un motore di ricerca. |
| SpeechGraph | Scraper a pagina singola che estrae informazioni da un sito web e genera un file audio. |
| ScriptCreatorGraph | Scraper a pagina singola che estrae informazioni da un sito web e genera uno script Python. |
| SmartScraperMultiGraph | Scraper multipagina che estrae informazioni da più pagine a partire da un singolo prompt e un elenco di sorgenti. |
| ScriptCreatorMultiGraph | Scraper multipagina che genera uno script Python per estrarre informazioni da più pagine e sorgenti. |
Per ciascuno di questi grafi esiste la versione multi. Consente di effettuare chiamate all'LLM in parallelo.
È possibile utilizzare diversi LLM tramite API, come **OpenAI**, **Groq**, **Azure**, **Gemini**, **[MiniMax](https://github.com/scrapegraphai/scrapegraph-ai/blob/main/docs/minimax.md)** e altri, oppure modelli locali usando **Ollama**.
Ricorda di avere [Ollama](https://ollama.com/) installato e di scaricare i modelli usando il comando **ollama pull**, se vuoi utilizzare modelli locali.
## 📖 Documentazione
[](https://colab.research.google.com/drive/1sEZBonBMGP44CtO6GQTwAlL0BGJXjtfd?usp=sharing)
La documentazione per ScrapeGraphAI può essere trovata [qui](https://docs.scrapegraphai.com/introduction).
## 🆚 Open Source vs API gestita
ScrapeGraphAI è disponibile in due versioni: **questa libreria open-source**, che esegui tu stesso, e l'**API cloud gestita** (utilizzata tramite gli SDK [Python](https://github.com/ScrapeGraphAI/scrapegraph-py) e [JS/TS](https://github.com/ScrapeGraphAI/scrapegraph-js)). Questa tabella spiega la differenza così puoi scegliere quella giusta.
| | Open Source (`scrapegraphai`) | API gestita (`scrapegraph-py` / `scrapegraph-js`) |
|---|---|---|
| **Cos'è** | Una libreria Python che esegui tu stesso | Un servizio cloud ospitato che chiami tramite SDK |
| **Dove viene eseguito** | La tua infrastruttura (self-hosted) | Cloud di ScrapeGraphAI |
| **LLM** | Porta il tuo (OpenAI, Groq, Gemini, Azure, locale tramite Ollama) | Gestito per te |
| **Rendering browser / JS** | Lo configuri tu (Playwright) | Gestito (stealth, modalità `auto`/`fast`/`js`) |
| **Proxy e anti-bot** | A tuo carico | Inclusi |
| **Scalabilità e manutenzione** | A tuo carico | Completamente gestite |
| **Modello di costo** | Token LLM + la tua infrastruttura | Crediti a consumo |
| **Autenticazione** | Le tue chiavi LLM | `SGAI_API_KEY` |
| **Funzionalità** | Pipeline a grafo (SmartScraper, Search, Speech, ScriptCreator…) | Scrape, Extract, Search, Crawl, Monitor, History |
| **Sforzo di configurazione** | Più configurazione | Minimo — chiave API + una chiamata |
| **Licenza** | MIT | L'SDK è MIT; il servizio API è a pagamento |
**Scegli la libreria open-source** se vuoi il pieno controllo, dati on-prem/self-hosted, LLM locali (Ollama) o un'ottimizzazione granulare dei costi — e sei disposto a gestire browser, proxy e scalabilità da solo.
**Scegli l'API gestita** se vuoi zero infrastruttura, rendering JS gestito e anti-bot, job **Crawl** e **Monitor** programmati integrati e il percorso più rapido verso la produzione — fatturata a crediti.
- Libreria open-source: https://github.com/ScrapeGraphAI/Scrapegraph-ai
- SDK Python: https://github.com/ScrapeGraphAI/scrapegraph-py
- SDK JS/TS: https://github.com/ScrapeGraphAI/scrapegraph-js
- Documentazione API: https://docs.scrapegraphai.com/introduction
## 🤝 Come contribuire
Sentiti libero di contribuire e unisciti al nostro server Discord per discutere con noi miglioramenti e darci suggerimenti!
Consulta le [linee guida per contribuire](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 e SDK di ScrapeGraph
Se stai cercando una soluzione rapida per integrare ScrapeGraph nel tuo sistema, dai un'occhiata alla nostra potente API [qui!](https://scrapegraphai.com)
[](https://scrapegraphai.com)
Offriamo SDK sia in Python che in Node.js, per facilitare l'integrazione nei tuoi progetti. Dai un'occhiata qui sotto:
| SDK | Linguaggio | Collegamento GitHub |
|-----------|----------|-----------------------------------------------------------------------------|
| SDK Python | Python | [scrapegraph-py](https://docs.scrapegraphai.com/sdks/python) |
| SDK Node.js | Node.js | [scrapegraph-js](https://docs.scrapegraphai.com/sdks/javascript) |
La documentazione API ufficiale può essere trovata [qui](https://docs.scrapegraphai.com/introduction).
## 📈 Telemetria
Raccogliamo metriche di utilizzo anonime per migliorare la qualità del nostro pacchetto e l'esperienza utente. I dati ci aiutano a dare priorità ai miglioramenti e a garantire la compatibilità. Se desideri disattivare la raccolta, imposta la variabile d'ambiente SCRAPEGRAPHAI_TELEMETRY_ENABLED=false. Per maggiori informazioni, consulta la documentazione [qui](https://docs.scrapegraphai.com/introduction).
## ❤️ Collaboratori
[](https://github.com/ScrapeGraphAI/Scrapegraph-ai/graphs/contributors)
## 🎓 Citazioni
Se hai utilizzato la nostra libreria per scopi di ricerca, citaci con il seguente riferimento:
```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}
}
```
## Autori
| | Informazioni di contatto |
|--------------------|----------------------|
| Marco Vinciguerra | [](https://www.linkedin.com/in/marco-vinciguerra-7ba365242/) |
| Lorenzo Padoan | [](https://www.linkedin.com/in/lorenzo-padoan-4521a2154/) |
## 📜 Licenza
ScrapeGraphAI è distribuita sotto la licenza MIT. Consulta il file [LICENSE](https://github.com/ScrapeGraphAI/Scrapegraph-ai/blob/main/LICENSE) per maggiori informazioni.
## Riconoscimenti
- Vorremmo ringraziare tutti i collaboratori del progetto e la comunità open-source per il loro supporto.
- ScrapeGraphAI è pensata per essere utilizzata solo a scopo di esplorazione dei dati e ricerca. Non siamo responsabili per qualsiasi uso improprio della libreria.
Fatto con ❤️ da [ScrapeGraph AI](https://scrapegraphai.com)
[Tracciamento Scarf](https://static.scarf.sh/a.png?x-pxid=102d4b8c-cd6a-4b9e-9a16-d6d141b9212d)