WebScraper Pro — مكشط ويب متعدد المحركات
أداة عربية لاستخراج بيانات الويب بثلاثة محركات: Requests+BS4 للمواقع البسيطة، Selenium للديناميكي، Playwright للمتقدم. واجهة Desktop بـ CustomTkinter، تصدير CSV/JSON/Excel.
abstract
أداة استخراج بيانات احترافية بواجهة عربية، تختار المحرّك المناسب لكل موقع.
🎯 المشكلة: كل أداة Scraping مخصصة لنوع موقع واحد. والمستخدم العربي يحتاج RTL + توثيق عربي.
✨ الحل: أداة موحّدة بـ 3 محركات قابلة للتبديل + واجهة عربية.
المحركات: • Requests + BeautifulSoup — مواقع HTML الثابتة، سرعة قصوى • Undetected ChromeDriver — مواقع JS مع حماية Cloudflare • Playwright — مواقع SPA معقدة
الميزات: • واجهة CustomTkinter داكنة وحديثة • تصدير CSV / JSON / Excel • معالجة دفعات من URLs • Selectors محفوظة قابلة لإعادة الاستخدام • توثيق عربي شامل بالأمثلة
architecture
┌──────────────┐ ┌────────────┐ ┌─────────────┐
│ client │─────▶│ nginx │─────▶│ next.js │
│ (browser) │ │ (proxy) │ │ (ssr) │
└──────────────┘ └─────┬──────┘ └──────┬──────┘
│ │
▼ ▼
┌───────────┐ ┌──────────┐
│ fastapi │◀──────▶│ postgres │
│ (asyncio) │ │ (asyncpg)│
└───────────┘ └──────────┘Stateless API behind a reverse proxy. SSR delivers HTML in under a second on warm cache. Connection pool keeps Postgres hot. JWT in HttpOnly cookie for the admin panel.
notes
- SSR-first to keep TTFB < 1s on cold visits.
- Type-checked end-to-end via Pydantic schemas mirrored to TS.
- Migrations versioned via Alembic; zero-downtime restarts.