برمجةحماية الدفعالتفاصيل
- التعديلات ضمن الباقة مجانية.
- إذا لم تردّ خلال 3 أيام من التسليم، يُقبل العمل تلقائيًا.
يُحجز المبلغ عند الدفع ولا يُحوَّل إلا بعد قبولك العمل.

مثال على النتيجة
محلل كتالوج مورّد أدوات الحدائق إلى Excel
شكل النتيجة
| رقم الصنف | الاسم | السعر | متوفر | الوزن | الصورة |
|---|---|---|---|---|---|
| GT-1042 | مقص تقليم، 20 مم | 18.90 | نعم | 0.24 كغ | …/gt-1042.jpg |
| GT-1187 | منشار قابل للطي، 210 مم | 24.50 | نعم | 0.31 كغ | …/gt-1187.jpg |
| GT-2210 | مقص تشذيب السياج، شفرة متموجة | 39.00 | لا | 1.10 كغ | …/gt-2210.jpg |
| GT-3305 | مجرفة يدوية، فولاذ مقاوم للصدأ | 9.80 | نعم | 0.18 كغ | …/gt-3305.jpg |
| GT-4120 | خرطوم حديقة 25 م، 1/2" | 42.00 | نعم | 2.90 كغ | …/gt-4120.jpg |
يضم الملف في هذا المثال 1,236 منتجًا من 52 صفحة قائمة.
جزء من الكود
def product_links(list_url: str) -> Iterator[str]:
"""روابط صفحات المنتجات من كل صفحات القائمة، مع اتباع رابط «التالي»."""
url: str | None = list_url
while url:
page = fetch(url)
for card in page.select("div.product-card a.title"):
yield urljoin(url, card["href"])
next_link = page.select_one("a.pagination-next")
url = urljoin(url, next_link["href"]) if next_link else None
def fetch(url: str) -> BeautifulSoup:
"""صفحة مفتوحة واحدة، بوتيرة مهذبة: فاصل زمني بين الطلبات وبضع محاولات عند الأخطاء."""
for attempt in range(3):
time.sleep(settings.delay_seconds)
response = session.get(url, timeout=30)
if response.status_code == 200:
return BeautifulSoup(response.text, "html.parser")
log.warning("%s أجاب بالرمز %s، المحاولة %d من 3", url, response.status_code, attempt + 1)
raise ScraperError(f"{url} لم تُفتح بعد 3 محاولات")
الملفات: أرشيف ZIP يضم scraper.py، وsettings.ini (صفحة البداية، والفاصل الزمني بين الطلبات، واسم الملف)، وrequirements.txt، وملف README عن التثبيت والتشغيل. يقرأ الصفحات المفتوحة فقط، صفحة كل ثانيتين، ويتحقق أولًا من ملف robots.txt الخاص بالموقع. يشغّله العميل على كمبيوتره الخاص.
العميل: متجر إلكتروني لمستلزمات الحدائق يعيد بيع أدوات أحد المورّدين؛ لدى المورّد كتالوج مفتوح على موقعه، لكن دون ملف لقائمة الأسعار. المهمة: المرور على صفحات قوائم الكتالوج، وفتح صفحة كل منتج، وحفظ رقم الصنف والاسم والسعر والتوفر والوزن ورابط الصورة الرئيسية في Excel، لمقارنة الأسعار مرة كل أسبوع.
العميل وجميع التفاصيل افتراضية.
عن هذه الخدمة
في كل مرة تشغّله، يتحقق هذا المحلل من المنتجات المتوفرة على موقع مفتوح، مثل موقع مورّدك أو متجر تعيد بيع بضاعته، ويحفظ جدولًا: الاسم، والرمز، والحالة كما تكتبها الصفحة، والكمية المتبقية حين تُعرض، ومدة التوصيل، والسعر، والرابط، وتاريخ الفحص ووقته. احتفظ بملف كل تشغيل لترى ما عاد إلى المخزون وما نفد. أرسل الموقع، ورابطًا إلى فئة وآخر إلى صفحة منتج، والحالات التي يستخدمها الموقع، وصفحة أو صفحتين محفوظتين من متصفحك. تحصل على كود Python وملف إعدادات وملف README وتشغّله على كمبيوترك. يقرأ الصفحات المفتوحة فقط بوتيرة مهذبة، ولا يسجّل الدخول أبدًا، ولا يتجاوز اختبارات captcha أو الحماية، ولا يجمع بيانات شخصية. أنت من يقرر ما إذا كانت شروط الموقع تسمح بذلك؛ وأي تغيير لاحق في تصميم صفحاته يتطلب تحديثًا.
ما المشمول
- ما الذي تحصل عليهأرشيف ZIP يضم كود Python وملف إعدادات وملف README بتعليمات خطوة بخطوة؛ ويُعرض الكود أيضًا في صفحة الطلب.
- الحالة في عمودكلمات الموقع نفسها، أو تسمياتك الخاصة مثل نعم / لا / حسب الطلب
- الكمية حين تُعرضحين تعرض الصفحة عدد القطع المتبقية
- صفوف مؤرخةتاريخ الفحص ووقته في كل صف
- وتيرة مهذبةفاصل زمني بين الصفحات يُضبط في الإعدادات
- يعمل على كمبيوتركWindows أو macOS أو Linux، مع Python
كيف يعمل
- 1الصفحاتترسل الموقع والمنتجات والحالات التي يستخدمها
- 2المحللنكتب الكود مع دليل تشغيله
- 3الفحص الأولتشغّله وتقارن بعض الحالات بالموقع
- 4التعديلاتتطلب التعديلات ضمن باقتك وترسل أي رسالة خطأ
ما نحتاجه منك
الموقع والصفحات المحددة: رابط إلى فئة وآخر إلى صفحة منتج، أو قائمة روابط منتجاتك، وعدد المنتجات تقريبًا. حالات المخزون التي يعرضها الموقع، مكتوبة كما تظهر. الحقول التي تحتاجها إلى جانب الحالة، مثل الرمز، والسعر، ومدة التوصيل. صفحة أو صفحتان محفوظتان من متصفحك (ملف > حفظ الصفحة باسم) أو لقطات شاشة، ويُفضّل أن تكون إحداهما لمنتج متوفر والأخرى لمنتج غير متوفر. وكم مرة تنوي تشغيله.
سنسألك:
- أي موقع وأي منتجات؟
- حالات المخزون
- حقول أخرى
- كم مرة ستجري الفحص؟
قارن بين الباقات
| الباقات | الأساسيةمخزون قائمة منتجاتك21 US$ | القياسيةمخزون فئة كاملة41 US$ | المميزةعدة مواقع أو أقسام74 US$ |
|---|---|---|---|
| مدة التنفيذ | 1 يوم | 2 يوم | 3 أيام |
| التعديلات | 1 | 2 | 3 |
| المواقع | 1 | 1 | حتى 3 |
| أنواع الصفحات | 1 | 2 (الفئة والمنتج) | حتى 3 |
| الحقول | حتى 10 | حتى 25 | حتى 25 في كل منها |
| يمر على صفحات قائمة | لا | نعم | نعم |
| ملف النتائج | CSV | Excel أو CSV | Excel أو CSV أو JSON |
| إزالة التكرارات، والاستئناف من حيث توقف | لا | لا | نعم |
| تاريخ الفحص ووقته | نعم | نعم | نعم |
| اطلب الأساسية | اطلب القياسية | اطلب المميزة |
حماية الدفع
تدفع عند الطلب، لكن المبلغ لا يُحوَّل إلا مقابل عمل قبلته.
- سعر ثابتلا يتغير سعر الباقة بعد الدفع.
- المبلغ محجوزعند الدفع، يُحجز المبلغ فقط. ولا يُحوَّل إلى Dleex إلا بعد قبولك العمل.
- فحص قبل التسليمتخضع كل نتيجة لفحص الجودة قبل أن تصل إليك، وتراها في صفحة الطلب قبل قبولها.
- تعديلات مجانيةاطلب تعديلات ضمن متطلبات طلبك بالعدد الذي تسمح به الباقة.
- القبول بعد 3 أيامإذا لم تقبل العمل ولم تطلب تعديلات خلال 3 أيام من التسليم، يُقبل تلقائيًا. وإذا كتبت في محادثة الطلب بعد التسليم، يبقى الطلب قيد الانتظار؛ وبعد ردّنا، قد نعيد بدء مهلة 3 أيام وسنُعلمك بذلك في المحادثة.
- إعادة التنفيذ أو استرداد المبلغ كاملًاإذا لم تطابق النتيجة متطلبات طلبك ولم تُصلحها التعديلات، أو استغرق العمل أكثر من ضعف مدة التنفيذ، فاكتب في محادثة الطلب: سنعيد تنفيذ العمل أو نردّ إليك المبلغ كاملًا.
الأسئلة والأجوبة
هل سينبهني حين يعود منتج إلى المخزون؟
لا. يحفظ جدولًا بتاريخ كل فحص ووقته؛ وتصفّيه أنت أو تضع ملفين جنبًا إلى جنب في Excel. الرسائل والتنبيهات ليست جزءًا منه.
هل يمكنه عرض المخزون في متجر أو مستودع معين؟
فقط إن عرضته صفحة مفتوحة دون تسجيل الدخول، مثل قائمة المتاجر في صفحة المنتج. اختيار المتجر الذي يتطلب حسابًا يبقى بعيد المنال.
كم مرة يمكنني تشغيله؟
بقدر ما يكون منصفًا للموقع: الفاصل الزمني بين الصفحات يعني أن الفئة الكبيرة تستغرق وقتًا، لذا فبضع مرات يوميًا هي الحد الأقصى عادة. تضيف الباقة المميزة دليلًا لتشغيله وفق جدول زمني.
هل يمكنه فحص المخزون على Amazon أو Google Shopping أو الشبكات الاجتماعية؟
لا. شروطها تمنع ذلك، وكذلك شروط LinkedIn والشبكات الاجتماعية الأخرى. أما المواقع الأخرى، فأنت من يقرر ما إذا كانت شروطها تسمح بذلك.
ماذا لو غيّر الموقع صفحاته؟
يتبع المحلل الصفحات كما هي الآن. وأي تغيير لاحق في التصميم أو في كلمات الحالة يتطلب تحديثًا، وهو طلب جديد.
لم تجد إجابتك؟


