כל הפרויקטים

אוטומציית Guest Checkout של Dell

אוטומציית Dell.com add-to-cart + guest checkout מקצה לקצה עם האנשה נגד זיהוי בוטים ו-artifacts לכישלון.

המטרה

זרימת רכישה אוטומטית מקצה לקצה באתר Dell במסלול guest checkout — הוספת מוצרים, מילוי שילוח ותשלום, שליחה — באופן אמין למרות זיהוי בוטים, widget תשלום iframes ו-overlays קופצים.

הפתרון

Orchestrator ב-Python/Selenium (main2.py) שמריץ add-to-cart + guest checkout מ-CLI, עם --step atc/--step checkout מודולרי, שילוח/תשלום מ-.env/JSON/demo, שכבת האנשה, iframe-aware, ניקוי overlays, טיפול BrightData SSL, היסטוריה ב-MongoDB, ו-artifacts לכישלון (DOM snapshot + failed_steps.json).

עיקרי הדברים

  • שכבת האנשה מנצחת את ה-anti-bot של Dell
  • מעבר iframe + Shadow DOM ל-widget התשלום
  • Artifacts אוטומטיים קיצרו דיבוג משעות לדקות
  • שלבי CLI מודולריים (atc / checkout / מלא)

האתגר

Dell מזהה webdriver, מהירות הקלדה אחידה וגלילה מהירה ומעביר ל-CAPTCHA/SSL interstitial.

שכבת האנשה ייעודית: type_slowly() עם jitter, human_pause() עם התפלגות נורמלית, human_scroll(), fingerprints.py לפרופיל קבוע, ו-bypass_ssl_interstitial_if_present().

שדות האשראי של Dell ב-iframes מקוננים שמשתנים — find_element נאיבי נכשל.

switch_into_context_with(predicate) עובר על כל ה-frames; deep_find() עובר Shadow DOM; כל שדה עטוף ב-ensure_visible_and_focus + js_set_value().

try_dismiss_overlays() רץ לפני כל לחיצה קריטית; click_safely() תופס ElementClickInterceptedException ומנסה שוב.

כישלונות שקטים במכונות מרוחקות דורשים מצב DOM מלא לבדיקה.

save_artifacts() שומר HTML snapshot + failed_steps.json עם step/URL/selector/error — ברפו כבר יש artifacts שמוכיחים שזה עבד.

מה נמסר

  • main2.py CLI
  • dell_guest_checkout.py ליבת הזרימה
  • actions.py + utils.py שכבת פעולה אנושית
  • shipping_demo.py + payment_demo.py פרופילי demo
  • fingerprints.py פרופיל דפדפן עקבי
  • integrations/db.py מחבר Mongo
  • BrightData SSL cert + README
  • requirements.txt

תוצאות

ATC → shipping → payment → submit

זרימה

4 (.env/JSON/demo/CLI)

מקורות קלט

HTML + JSON artifacts

תצפית

MongoDB

היסטוריה

מה זה לימד אותי

  • טיפול הגנתי בלחיצות/overlays חשוב כמו ה-happy path — 80% מה-flakes ממודלים בזמן הלא נכון
  • Artifacts של כישלון חותכים דיבוג משעות לדקות
  • פרופילי שילוח/תשלום החלפיים שומרים על אותו קוד בטוח בדיב ובפרודקשן