10 KiB
🕷️ ScrapeGraphAI: Yalnızca Bir Kez Kazıyın
English | 中文 | 日本語 | 한국어 | Русский | Türkçe
ScrapeGraphAI, LLM ve grafik mantığını kullanarak web siteleri ve yerel belgeler (XML, HTML, JSON, Markdown vb.) için kazıma süreçleri oluşturan bir web kazıma Python kütüphanesidir.
Sadece hangi bilgiyi çıkarmak istediğinizi söyleyin, kütüphane sizin için yapar!
🚀 Hızlı Kurulum
Scrapegraph-ai için referans sayfası PyPI'nin resmi sayfasında mevcuttur: pypi.
pip install scrapegraphai
playwright install
Not: Diğer kütüphanelerle çakışmaları önlemek için kütüphaneyi sanal bir ortamda kurmanız önerilir 🐱
Opsiyonel Bağımlılıklar
Kütüphaneyi kurarken ek bağımlılıklar ekleyebilirsiniz:-
Daha Fazla Dil Modeli: Fireworks, Groq, Anthropic, Hugging Face ve Nvidia AI Endpoints gibi ek dil modelleri kurulur.
Bu grup, Fireworks, Groq, Anthropic, Together AI, Hugging Face ve Nvidia AI Endpoints gibi ek dil modellerini kullanmanızı sağlar.
pip install scrapegraphai[other-language-models] -
Semantik Seçenekler: Graphviz gibi gelişmiş semantik işleme araçlarını içerir.
pip install scrapegraphai[more-semantic-options] -
Tarayıcı Seçenekleri: Browserbase gibi ek tarayıcı yönetim araçları/hizmetlerini içerir.
pip install scrapegraphai[more-browser-options]
💻 Kullanım
Web sitesinden (veya yerel dosyadan) bilgi çıkarmak için kullanılabilecek birden fazla standart kazıma süreci vardır.
En yaygın olanı SmartScraperGraph'tır; bu, bir kullanıcı isteği ve kaynak URL'si verildiğinde tek bir sayfadan bilgi çıkarır.
import json
from scrapegraphai.graphs import SmartScraperGraph
# Kazıma süreci için yapılandırmayı tanımlayın
graph_config = {
"llm": {
"api_key": "SİZİN_OPENAI_API_ANAHTARINIZ",
"model": "openai/gpt-4o-mini",
},
"verbose": True,
"headless": False,
}
# SmartScraperGraph örneğini oluşturun
smart_scraper_graph = SmartScraperGraph(
prompt="Şirketin ne yaptığı, adı ve bir iletişim e-postası hakkında bazı bilgiler bulun.",
source="https://scrapegraphai.com/",
config=graph_config
)
# Süreci çalıştırın
result = smart_scraper_graph.run()
print(json.dumps(result, indent=4))
Çıktı aşağıdaki gibi bir sözlük olacaktır:
{
"company": "ScrapeGraphAI",
"name": "ScrapeGraphAİ LLM kullanarak web sitelerinden ve yerel belgelerden içerik çıkarma",
"contact_email": "contact@scrapegraphai.com"
}
Birden fazla sayfadan bilgi çıkarmak, Python scriptleri oluşturmak veya hatta ses dosyaları oluşturmak için kullanılabilecek diğer süreçler de vardır.
| Süreç Adı | Açıklama |
|---|---|
| SmartScraperGraph | Sadece bir kullanıcı isteği ve bir kaynak girişi gerektiren tek sayfalık kazıyıcı. |
| SearchGraph | Bir arama motorunun en iyi n arama sonucundan bilgi çıkaran çok sayfalı kazıyıcı. |
| SpeechGraph | Bir web sitesinden bilgi çıkaran ve bir ses dosyası oluşturan tek sayfalık kazıyıcı. |
| ScriptCreatorGraph | Bir web sitesinden bilgi çıkaran ve bir Python scripti oluşturan tek sayfalık kazıyıcı. |
| SmartScraperMultiGraph | Tek bir bilgi istemi ve kaynak listesi verilen birden çok sayfadan bilgi ayıklayan çok sayfalı kazıyıcı. |
| ScriptCreatorMultiGraph | Birden fazla sayfa veya kaynaktan bilgi çıkarmak için bir Python scripti oluşturan çok sayfalı kazıyıcı. |
Bu süreçlerin her biri için çoklu versiyon vardır. Bu, LLM çağrılarını paralel olarak yapmanızı sağlar.
OpenAI, Groq, Azure ve Gemini gibi API'ler aracılığıyla farklı LLM'leri kullanmak veya Ollama kullanarak yerel modelleri kullanmak mümkündür.
Yerel modelleri kullanmak istiyorsanız, Ollama kurulu olduğundan ve ollama pull komutunu kullanarak modelleri indirdiğinizden emin olun.
🔍 Demo
Resmi Streamlit demosu:
Google Colab kullanarak doğrudan web üzerinde deneyin:
📖 Dokümantasyon
ScrapeGraphAI dokümantasyonuna buradan ulaşabilirsiniz.
Ayrıca Docusaurus'a buradan göz atın.
🏆 Sponsorlar
🤝 Katkıda Bulunun
Projeye katkıda bulunmaktan çekinmeyin ve geliştirmeleri tartışmak ve bize önerilerde bulunmak için Discord sunucumuza katılın!
Lütfen katkıda bulunma yönergelerine bakın.
📈 Telemetri
Paketimizin kalitesini ve kullanıcı deneyimini geliştirmek amacıyla anonim kullanım metrikleri topluyoruz. Bu veriler, iyileştirmelere öncelik vermemize ve uyumluluğu sağlamamıza yardımcı olur. İsterseniz, SCRAPEGRAPHAI_TELEMETRY_ENABLED=false ortam değişkenini ayarlayarak devre dışı bırakabilirsiniz. Daha fazla bilgi için lütfen buraya bakın.
❤️ Katkıda Bulunanlar
🎓 Atıflar
Kütüphanemizi araştırma amaçlı kullandıysanız, lütfen bizi aşağıdaki referansla alıntılayın:
@misc{scrapegraph-ai,
author = {Marco Perini, Lorenzo Padoan, Marco Vinciguerra},
title = {Scrapegraph-ai},
year = {2024},
url = {https://github.com/VinciGit00/Scrapegraph-ai},
note = {A Python library for scraping leveraging large language models}
}
Yazarlar
| İletişim Bilgileri | |
|---|---|
| Marco Vinciguerra | |
| Marco Perini | |
| Lorenzo Padoan |
📜 Lisans
ScrapeGraphAI, MIT Lisansı altında lisanslanmıştır. Daha fazla bilgi için LİSANS dosyasına bakın.
Teşekkürler
- Projeye katkıda bulunan tüm katılımcılara ve açık kaynak topluluğuna destekleri için teşekkür ederiz.
- ScrapeGraphAİ, yalnızca veri arama ve araştırma amacıyla kullanılmak üzere tasarlanmıştır. Kütüphanenin kötüye kullanılmasından sorumlu değiliz.