Used-Car Dealer Inventory Sync System -- 2

Заказчик: AI | Опубликовано: 14.12.2025

Build Fully Automated Dealer Inventory Sync System (Websites + Facebook → Auto Update Our Server & Website) PROJECT SUMMARY We are building a fully automated dealer inventory synchronization system for a used-car marketplace. This is not a basic scraper and not a one-time data extraction. The system must continuously collect car listings from dealer websites and Facebook dealer pages, analyze changes daily, and automatically update our live website hosted on our own server. The goal is to keep dealer stock always up to date without manual work. CORE OBJECTIVE Build a system that can: Scrape dealer car listings from multiple sources Detect daily changes (new / removed / sold / updated cars) Normalize all data into a standard car template Automatically update our website database or import system Run on a daily schedule on our server This project will be executed in phases, but this job post describes the complete Phase 1 system. DATA SOURCES The system must support: 1. Dealer Websites Different layouts and structures Pagination and infinite scroll Individual car detail pages 2. Facebook Dealer Pages Public dealer pages (not Marketplace accounts) Scroll to load all listings Click “See more” to expand full descriptions Extract posts that represent car listings only The system must ignore non-car posts such as promotions, contact posts, or banners. DATA TO EXTRACT (IF AVAILABLE) From each car listing or post: Make Model Year Mileage (KM) Price or Monthly price Description Images Listing URL / Post URL Some listings may not contain all fields. The system must still add the car with missing fields left empty. CAR IDENTIFICATION & SYNC LOGIC (CRITICAL REQUIREMENT) Each car must be uniquely identified using a car fingerprint, for example: Dealer ID + Make + Model + Year + Mileage The system must run daily and perform the following logic: If a car appears today but not yesterday → ADD If a car exists today and yesterday → UPDATE (price, description, etc.) If a car existed yesterday but not today → REMOVE If description contains keywords such as: “sold” “booked” “not available” “reserved” → mark the car as SOLD or inactive on the website This logic must work automatically without manual intervention. AUTOMATION & SCHEDULING The entire system must run automatically No manual clicking or browser interaction Daily scheduled execution using cron or equivalent Error handling and retries for failed pages Logging system for: Successful runs Failed sources Parsing errors WEBSITE INTEGRATION (MANDATORY) The system must automatically update our live website hosted on our server. One of the following approaches can be used (developer to propose best option): Generate a daily CSV or JSON file that our site imports automatically Directly update our website database (MySQL/PostgreSQL) API-based integration Manual uploads are not acceptable. SERVER & DEPLOYMENT REQUIREMENTS The developer must: Deploy the full system on our server (VPS) Configure: Runtime environment Dependencies Scheduler (cron) Ensure the system runs after server restarts Provide: Clear setup instructions Environment configuration How to add new dealer sources in the future The final solution must be production-ready, not just local scripts. TECHNOLOGY REQUIREMENTS Preferred (not mandatory, but expected): Playwright / Puppeteer / Selenium (headless browser) Python or Node.js Server-side execution (Linux VPS) Clean, modular, documented code WHAT WE DO NOT WANT SaaS scraping tools Chrome extensions Free-trial-based services One-click scraping platforms UI automation only (UiPath-only solutions) We are building an owned, maintainable system, not a temporary workaround. TIMELINE This is not a one-day project. Expected Phase 1 duration: 2 to 4 weeks, depending on approach and scope We prefer realistic timelines over fast promises. BUDGET Open to realistic bids Budget is constrained, so scope control is important We are evaluating: Technical understanding System design Scalability Long-term maintainability Unrealistically low bids with “everything guaranteed” will be rejected.