
Scrapegraph-ai v2.1.7
مكشط Python مبني على الذكاء الاصطناعي
🚀 هل تبحث عن طريقة أسرع وأبسط لتجميع البيانات على نطاق واسع (بخمسة أسطر فقط من التعليمات البرمجية)؟ اطّلع على نسختنا المحسّنة على ScrapeGraphAI.com! 🚀
🕷️ ScrapeGraphAI: أنت تجمع مرة واحدة فقط
English | 中文 | 日本語 | 한국어 | Русский | Türkçe | Deutsch | Español | français | Português | Italiano
ScrapeGraphAI هي مكتبة تجميع بيانات الويب بلغة بايثون تستخدم نماذج اللغات الكبيرة (LLM) ومنطق الرسوم البيانية المباشر لإنشاء خطوط تجميع للمواقع الإلكترونية والمستندات المحلية (XML و HTML و JSON و Markdown وغيرها).
فقط حدّد المعلومات التي تريد استخراجها، وستقوم المكتبة بذلك نيابةً عنك!
🚀 التكاملات
توفّر ScrapeGraphAI تكاملًا سلسًا مع الأطر والأدوات الشائعة لتعزيز قدراتك في تجميع البيانات. سواء كنت تبني باستخدام Python أو Node.js، أو تستخدم أطر عمل LLM، أو تعمل مع منصات بدون كود، فلدينا ما يناسبك من خلال خيارات التكامل الشاملة لدينا..
يمكنك العثور على مزيد من المعلومات عبر الرابط التالي.
التكاملات:
- واجهة برمجة التطبيقات (API): التوثيق
- حزم SDK: Python، Node
- أطر عمل LLM: Langchain، Llama Index، Crew.ai، Agno، CamelAI
- أطر العمل منخفضة الكود: Pipedream، Bubble، Zapier، n8n، Dify، Toolhouse
- خادم MCP: الرابط
🚀 التثبيت السريع
الصفحة المرجعية لـ Scrapegraph-ai متاحة على الصفحة الرسمية لـ PyPI: pypi.
pip install scrapegraphai
# IMPORTANT (for fetching websites content)
playwright install
ملاحظة: يُنصح بتثبيت المكتبة في بيئة افتراضية لتجنّب التعارض مع المكتبات الأخرى 🐱
💻 الاستخدام
توجد خطوط تجميع قياسية متعددة يمكن استخدامها لاستخراج المعلومات من موقع ويب (أو ملف محلي).
الأكثر شيوعًا هو SmartScraperGraph، الذي يستخرج المعلومات من صفحة واحدة بناءً على مطالبة المستخدم وعنوان URL للمصدر.
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] بالنسبة إلى OpenAI والنماذج الأخرى، كل ما عليك فعله هو تغيير إعدادات llm!
graph_config = { "llm": { "api_key": "YOUR_OPENAI_API_KEY", "model": "openai/gpt-4o-mini", }, "verbose": True, "headless": False, }
سيكون الناتج قاموسًا (dictionary) بالشكل التالي:
{
"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"
}
}
توجد خطوط تجميع أخرى يمكن استخدامها لاستخراج المعلومات من صفحات متعددة، أو إنشاء نصوص برمجية بلغة Python، أو حتى إنشاء ملفات صوتية.
| اسم خط التجميع | الوصف |
|---|---|
| SmartScraperGraph | أداة تجميع لصفحة واحدة لا تحتاج سوى إلى مطالبة مستخدم ومصدر إدخال. |
| SearchGraph | أداة تجميع متعددة الصفحات تستخرج المعلومات من أفضل n من نتائج البحث في محرك بحث. |
| SpeechGraph | أداة تجميع لصفحة واحدة تستخرج المعلومات من موقع ويب وتُنشئ ملفًا صوتيًا. |
| ScriptCreatorGraph | أداة تجميع لصفحة واحدة تستخرج المعلومات من موقع ويب وتُنشئ نصًا برمجيًا بلغة Python. |
| SmartScraperMultiGraph | أداة تجميع متعددة الصفحات تستخرج المعلومات من عدة صفحات بناءً على مطالبة واحدة وقائمة مصادر. |
| ScriptCreatorMultiGraph | أداة تجميع متعددة الصفحات تُنشئ نصًا برمجيًا بلغة Python لاستخراج المعلومات من صفحات ومصادر متعددة. |
لكل من هذه الرسوم البيانية توجد نسخة متعددة (multi). وهي تتيح إجراء استدعاءات نموذج LLM بالتوازي.
من الممكن استخدام نماذج LLM مختلفة عبر واجهات برمجة التطبيقات، مثل OpenAI و Groq و Azure و Gemini و MiniMax والمزيد، أو النماذج المحلية باستخدام Ollama.
تذكّر تثبيت Ollama وتنزيل النماذج باستخدام الأمر ollama pull، إذا كنت ترغب في استخدام النماذج المحلية.
📖 التوثيق
يمكن العثور على توثيق ScrapeGraphAI هنا.
🆚 مفتوح المصدر مقابل واجهة برمجة التطبيقات المُدارة
تتوفّر ScrapeGraphAI بنسختين: هذه المكتبة مفتوحة المصدر، والتي تشغّلها بنفسك، وواجهة برمجة التطبيقات السحابية المُدارة (تُستخدم عبر حزم SDK الخاصة بـ Python و JS/TS). يوضّح هذا الجدول الفرق بينهما حتى تتمكن من اختيار الأنسب لك.
مفتوح المصدر (scrapegraphai) | واجهة برمجة التطبيقات المُدارة (scrapegraph-py / scrapegraph-js) | |
|---|---|---|
| ما هي | مكتبة Python تشغّلها بنفسك | خدمة سحابية مستضافة تستدعيها عبر SDK |
| أين تعمل | بنيتك التحتية الخاصة (استضافة ذاتية) | سحابة ScrapeGraphAI |
| LLM | أحضر نموذجك الخاص (OpenAI، Groq، Gemini، Azure، أو محلي عبر Ollama) | مُدار نيابةً عنك |
| عرض المتصفح / JS | تقوم بتهيئته بنفسك (Playwright) | مُدار (وضع التخفي stealth، أوضاع auto/fast/js) |
| الوكلاء والحماية من الروبوتات | مسؤوليتك أنت | مشمولة |
| التوسّع والصيانة | مسؤوليتك أنت | مُدار بالكامل |
| نموذج التكلفة | توكنز LLM + بنيتك التحتية الخاصة | اعتمادات الدفع حسب الاستخدام |
| المصادقة | مفاتيح LLM الخاصة بك | SGAI_API_KEY |
| القدرات | خطوط تجميع قائمة على الرسوم البيانية (SmartScraper، Search، Speech، ScriptCreator…) | Scrape، Extract، Search، Crawl، Monitor، History |
| جهد الإعداد | مزيد من الإعدادات | أدنى حد — مفتاح API + استدعاء واحد |
| الترخيص | MIT | حزمة SDK مرخّصة MIT؛ خدمة واجهة برمجة التطبيقات مدفوعة |
اختر المكتبة مفتوحة المصدر إذا كنت تريد التحكم الكامل، أو البيانات داخل مقرّك (on-prem)/الاستضافة الذاتية، أو نماذج LLM المحلية (Ollama)، أو ضبط التكلفة بدقة — وكنت مستعدًا لإدارة المتصفحات والوكلاء والتوسّع بنفسك.
اختر واجهة برمجة التطبيقات المُدارة إذا كنت تريد بنية تحتية صفرية، وعرض JavaScript مُدارًا وحماية من الروبوتات، ومهام Crawl مدمجة ووظائف Monitor مجدولة، وأسرع طريق إلى الإنتاج — مع الفوترة بالاعتمادات.
- المكتبة مفتوحة المصدر: https://github.com/ScrapeGraphAI/Scrapegraph-ai
- حزمة Python SDK: https://github.com/ScrapeGraphAI/scrapegraph-py
- حزمة JS/TS SDK: https://github.com/ScrapeGraphAI/scrapegraph-js
- توثيق واجهة برمجة التطبيقات: https://docs.scrapegraphai.com/introduction
🤝 المساهمة
لا تتردد في المساهمة والانضمام إلى خادم Discord الخاص بنا لمناقشة التحسينات معنا وتقديم اقتراحاتك!
يُرجى الاطلاع على إرشادات المساهمة.
🔗 واجهة برمجة تطبيقات ScrapeGraph وحزم SDK
إذا كنت تبحث عن حل سريع لدمج ScrapeGraph في نظامك، فاطّلع على واجهة برمجة التطبيقات القوية لدينا هنا!
نوفّر حزم SDK بلغتي Python وNode.js، مما يسهّل دمجها في مشاريعك. اطّلع عليها أدناه:
| حزمة SDK | اللغة | رابط GitHub |
|---|---|---|
| Python SDK | Python | scrapegraph-py |
| Node.js SDK | Node.js | scrapegraph-js |
يمكن العثور على توثيق واجهة برمجة التطبيقات الرسمي هنا.
📈 القياس عن بُعد (Telemetry)
نجمع مقاييس استخدام مجهولة الهوية لتعزيز جودة حزمتنا وتجربة المستخدم. تساعدنا هذه البيانات في تحديد أولويات التحسينات وضمان التوافق. إذا كنت ترغب في إلغاء الاشتراك، اضبط متغير البيئة SCRAPEGRAPHAI_TELEMETRY_ENABLED=false. لمزيد من المعلومات، يُرجى الرجوع إلى التوثيق هنا.
❤️ المساهمون
🎓 الاستشهادات
إذا كنت قد استخدمت مكتبتنا لأغراض بحثية، فيُرجى الاستشهاد بنا بالمرجع التالي:
@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}
}
المؤلفون
📜 الترخيص
ScrapeGraphAI مرخّصة بموجب رخصة MIT. راجع ملف LICENSE لمزيد من المعلومات.
شكر وتقدير
- نودّ أن نشكر جميع المساهمين في المشروع ومجتمع المصادر المفتوحة على دعمهم.
- صُمّمت ScrapeGraphAI لاستخدامها في استكشاف البيانات والأغراض البحثية فقط. لسنا مسؤولين عن أي إساءة استخدام للمكتبة.
صُنعت بكل ❤️ بواسطة ScrapeGraph AI
