Crawlee Python: الدليل الشامل لاستخراج بيانات الويب وأتمتة المتصفح

استخراج بيانات الويب في Python كان دائماً يعني الاختيار بين السرعة (HTTP خام + محلل) والقدرة (متصفح بدون واجهة). Crawlee يزيل هذا التنازل بواجهة موحدة تتعامل مع الاثنين — مع الظهور كإنسان لأنظمة كشف البوتات.
طُوّر بواسطة Apify، يوفر Crawlee لـ Python بنية تحتية للزحف بمستوى الإنتاج. مع أكثر من 8,400 نجمة على GitHub، يصبح سريعاً البديل الحديث لـ Scrapy.
إحصائيات المشروع
| المقياس | القيمة |
|---|---|
| نجوم GitHub | +8,400 |
| الفوركات | 662 |
| تاريخ الإنشاء | يناير 2024 |
| اللغة | Python |
| الترخيص | Apache 2.0 |
| الإصدارات | 58 |
| أنشأه | Apify |
| الموقع | crawlee.dev/python |
ما هو Crawlee؟
مكتبة استخراج بيانات الويب وأتمتة المتصفح لـ Python:
- استخراج بيانات للذكاء الاصطناعي، LLM، خطوط RAG أو GPTs
- تنزيل ملفات — HTML, PDF, JPG, PNG
- زحف المواقع مع اكتشاف تلقائي للروابط
- تجاوز حماية البوتات بسلوك بشري افتراضي
يعمل مع Parsel, BeautifulSoup, Playwright وHTTP خام.
نوعان من الزواحف
BeautifulSoupCrawler
لاستخراج HTML السريع بدون تنفيذ JavaScript.
PlaywrightCrawler
للمواقع الثقيلة بـ JavaScript التي تتطلب عرض المتصفح.
الميزات الرئيسية
- واجهة موحدة — نفس API لـ HTTP ومتصفح بدون واجهة
- زحف متوازي تلقائي — يتكيف مع موارد النظام
- إعادة محاولة تلقائية — يتعامل مع الأخطاء والحظر بسلاسة
- تدوير البروكسي — إدارة مدمجة للبروكسيات والجلسات
- طابور مستمر — استئناف الزحف بعد الانقطاع
- تخزين مرن — مجموعات بيانات ومخازن قيم-مفاتيح
- تلميحات نوع كاملة — إكمال تلقائي IDE
- مبني على Asyncio — Python غير متزامن حديث
لماذا Crawlee بدلاً من Scrapy؟
| الجانب | Crawlee | Scrapy |
|---|---|---|
| غير متزامن | ✅ Asyncio أصلي | Twisted |
| تلميحات النوع | ✅ كاملة | جزئية |
| التكامل | ✅ سكربت Python بسيط | إطار عمل مطلوب |
| استمرارية الحالة | ✅ مدمجة | يدوي |
| دعم المتصفح | ✅ Playwright مدمج | Splash/إضافة |
| مكافحة البوتات | ✅ افتراضي | middleware مطلوب |
التثبيت
# CLI (موصى به)
uvx 'crawlee[cli]' create my-crawler
# يدوي
pip install 'crawlee[beautifulsoup]'
pip install 'crawlee[playwright]'
الخلاصة
Crawlee Python هو ما كان يجب أن يكون عليه استخراج بيانات الويب: مكتبة واحدة تتعامل مع HTTP، أتمتة المتصفح، تدوير البروكسي، الأخطاء والتخزين — بواجهة نظيفة ومحددة النوع وقائمة على asyncio. مع أكثر من 8,400 نجمة ودعم Apify، يوفر Crawlee بنية تحتية للزحف بمستوى الإنتاج بدون منحنى تعلم Scrapy.