איסוף מלאי אוטומטי מאתרי ספקים ב-1C-Bitrix

כאשר ספק אינו מספק API ורמות המלאי באתר שלו משתנות מדי יום, לקוחות נתקלים בפריטים שאזלו מהמלאי לאחר ביצוע הזמנה. אנו מבצעים אוטומציה של איסוף נתונים מחלונות הראווה של הספקים ומעדכנים מלאי ב-1C-Bitrix, וכך משחררים אותך מעבודה ידנית ומטעויות. הצוות שלנו מספק פרויקט turnkey — מניתוח חלון הראווה ועד להגדרת פרסור ותמיכה שוטפת, תוך הבטחת דיוק הנתונים ללא פספוס מועדים.
השירותים שאנו מציעים
מציג 1 מתוך 1כל 1626 השירותים
איסוף מלאי אוטומטי מאתרי ספקים ב-1C-Bitrix
בינוני
~1-2 שבועות

הכישורים שלנו:

שאלות נפוצות

איסוף מלאי אוטומטי מחנויות ספקים ב-1C-Bitrix

מצב: הספק לא מספק API, שולח מחירונים פעם בשבוע במייל, והמלאי בפועל משתנה מדי יום. לקוח מבצע הזמנה — המוצר אזל מהמלאי.

אנחנו פותרים את הבעיה הזו על ידי פרסור חלון הראווה של הספק ועדכון השדה CATALOG_QUANTITY ב-1C-Bitrix. פרסור הוא לא תמיד HTML: לעתים קרובות המלאי מאוחסן במשתני JSON בעמוד (window.__PRODUCT_DATA__).

אנחנו משתמשים ב-CURL וב-regex — זה מהיר יותר מדפדפן headless ולא מעמיס על השרת. כדי להתגונן מפני חסימות, אנחנו משתמשים ב-User-Agents אקראיים וברוטציית פרוקסי. למעלה מ-5 שנים בשוק, אוטומטנו איסוף מלאי עבור קטלוגים מ-500 עד 50,000 SKU.

כל פרויקט עובר קונפיגורציה אישית — מבחירת שיטת הפרסור ועד ללוגיקה של טיפול במלאי אפס. הזמינו פיתוח פרסור — ואנחנו ננתח את חלון הראווה של הספק שלכם.

איך אנחנו מפרסרים מלאי מאתרי ספקים

באתר של ספק המלאי יכול להיות מיוצג בדרכים שונות: ערך מספרי (במלאי: 47 יח') — אנחנו מפרסרים את המספר ישירות; סטטוס מלאי (במלאי, בהזמנה, אזל) — אנחנו ממפים אותו ל-0/1/999; מספר מחסנים — אנחנו מסכמים אותם או לוקחים את המחסן הקרוב.

לפעמים המלאי מוסתר במשתני JS — אנחנו מחפשים דרך regex בגוף העמוד, וזה מהיר יותר מדפדפן headless. אם הספק משתמש ב-API (נדיר), אנחנו מתחברים דרך REST.

למה מיפוי מוצרים הוא צוואר הבקבוק הגדול ביותר?

זהו השלב המרכזי. בלי מיפוי אמין, הפרסור חסר תועלת. אפשרויות:

  • SKU של הספק — אנחנו מוסיפים מאפיין SUPPLIER_SKU לאינפובלוק. בזמן הפרסור, אנחנו מחפשים את האלמנט עם הערך הזה דרך CIBlockElement::GetList() עם פילטר לפי מאפיין.
  • XML_ID — אם מוצרים יובאו בעבר ממחירון הספק, XML_ID עשוי להתאים למזהה הפנימי שלהם.
  • EAN/ברקוד — אפשרות אוניברסלית למוצרים ממותגים.

עבור קטלוגים גדולים (10,000+ SKU), סינון לפי מאפיין דרך ORM עובד לאט. עדיף לבנות מיפוי הפוך supplier_sku → element_id ב-Redis או בטבלה מותאמת אישית ולעדכן אותו כשהקטלוג משתנה.

איך המלאי מתעדכן ב-Bitrix

לפי התיעוד של 1C-Bitrix, עדכון כמות המוצר מבוצע דרך המתודה CCatalogProduct::Update.

CCatalogProduct::Update($elementId, [ 'QUANTITY' => $parsedQty, 'QUANTITY_RESERVED' => 0, ]);

אם החנות משתמשת במחסנים (b_catalog_store), אנחנו מעדכנים דרך CCatalogStoreProduct::Update() עם ציון STORE_ID.

כשמעדכנים רק כמות, אל תיגעו ב-ACTIVE — אחרת תאבדו עריכות פעילות ידניות. בצעו UPDATE נפרד רק של השדה הנדרש.

איך לטפל במלאי אפס בלי לאבד מכירות?

אסור להסתיר מוצר אוטומטית כשהמלאי אפס — הספק עשוי לחדש את המחסן למחרת. הלוגיקה העדינה הנכונה:

  1. כמות = 0 → המוצר נשאר פעיל, אבל מתווסף דגל "בהזמנה".
  2. כמות = 0 למשך יותר מ-N ימים → התראה למנהל, החלטה ידנית.
  3. המוצר לא נמצא באתר הספק 3+ פעמים ברצף → דגל SUPPLIER_DISCONTINUED.

אנחנו מממשים דגלים דרך מאפייני אינפובלוק או שדות של Highload block.

איך להגדיר פרסור מלאי: הוראות שלב-אחר-שלב

  • ניתוח חלון הראווה של הספק. אנחנו קובעים את שיטת הפרסור (HTML, משתני JSON, API) ומכינים סלקטורים.
  • פיתוח הפרסר. סקריפט PHP עם CURL, תמיכה ב-regex, ובאופן אופציונלי Guzzle. כדי להתגונן מפני חסימות, אנחנו משתמשים ב-User-Agents אקראיים ובפרוקסי.
  • הגדרת מיפוי SKU. קישור בין SKU של הספק למזהי המוצרים ב-Bitrix. עבור קטלוגים של 10,000+ SKU, אנחנו משתמשים ב-Redis.
  • אינטגרציה ב-Bitrix. סוכן או משימת cron, עדכוני מלאי דרך CCatalogProduct::Update(). אנחנו בודקים על סט מוצרים לבדיקה.
  • לוגיקת טיפול במלאי אפס. דגלים אוטומטיים, התראות למנהל. אנחנו בודקים תרחישים: מוצר נעלם, הופיע, מחיר השתנה.
  • ניטור ותמיכה. אחרי ההשקה, הפרסר עובד יציב; אם מבנה האתר של הספק משתנה, ההתאמה אורכת לא יותר משעתיים.

מה כלול בעבודה

רכיב תיאור
ניתוח חלון הראווה של הספק אנחנו קובעים את שיטת הפרסור (HTML, משתני JSON, API) ומכינים סלקטורים
פיתוח הפרסר סקריפט PHP עם CURL, תמיכה ב-regex, ובאופן אופציונלי Guzzle
מיפוי SKU קישור בין SKU של הספק למזהי המוצרים ב-Bitrix
אינטגרציה ב-Bitrix סוכן או משימת cron, עדכוני מלאי דרך CCatalogProduct::Update()
לוגיקת טיפול במלאי אפס דגלים אוטומטיים, התראות למנהל
תיעוד ותמיכה סכמת מיפוי, הוראות להוספת ספק, שבועיים של תמיכה חינם

לוח זמנים של העבודה

שלב משך
ניתוח האתר של הספק, בחירת שיטת הפרסור 2–4 שעות
פיתוח פרסר המלאי 1–2 ימים
הגדרת מיפוי SKU 4–8 שעות
לוגיקת עדכון ב-Bitrix + טיפול במלאי אפס 4–8 שעות
הגדרת תזמון וניטור 2–4 שעות

סה"כ: 3–5 ימי עסקים לספק. כל ספק נוסף — +1–2 ימים (מבני אתרים שונים). אנחנו מבטיחים שאחרי ההשקה הפרסור יעבוד יציב, ואם מבנה האתר של הספק משתנה, ההתאמה תארך לא יותר משעתיים. חיסכון בזמן על עיבוד מלאי ידני — עד 80% בחודש. אנחנו נעריך את הפרויקט שלכם — פשוט כתבו לנו. בואו נדון במשימה עכשיו.