Python, Scraping, AI & more

Job ID: 39626955

Budget: $15 – $25 USD

***  About Us ***
We are an IT‑parts company in South Africa. We need a Python dev to automate two workflows that currently cost us hours every month:

A monthly product scraper & matcher (Memory.net + BlissComputers.net)

An AI‑powered assistant that turns spec emails into validated BOMs with supplier pricing

If you enjoy clean code, smart automation, and making businesses run smoother, read on!

***  Monthly Product Scraper & Matcher ***
Sites:

https://www.memory.net

https://www.blisscomputers.net

Cycle: Full scrape once a month (cron ~02:00 UTC).

Data to capture

Site Fields
Memory.net Capacity, Memory Type, ECC, DIMM Type, Rank, Speed, Voltage, Height, Pins, CL
BlissComputers Size, Resolution, Backlight Type, Pin Connection, Side, Technology

*** Key tasks ***

Initial full scrape ➜ send us a CSV/JSON sample for sign‑off.

Capture full category breadcrumb (tag “Uncategorised” if none).

Group variants within each site that match all fields above, assign deterministic master_code.

Store in PostgreSQL 15 and drop CSV/JSON in /output/YYYY‑MM‑DD/.

Anti‑bot protection – your solution must handle basic bot detection (rotating headers, polite delays, etc.) and recover gracefully.

Must run reliably on our Windows Server 2019/2022 box. Docker is okay (Docker Desktop / WSL 2) but confirm compatibility in your bid.

Design scraper framework so we can add a third login‑gated site (HubX) later.

*** Email‑to‑BOM AI Assistant ***
Flow:
1- Webhook catches an internal email (we’ll give you the endpoint).
2- Send the text to OpenAI; receive either a JSON BOM or clarifying questions.
3- If questions, email back to sender → wait → retry until BOM ready.
4- Validate each BOM line with OpenAI; map to our canonical part numbers.
5- Parse a messy supplier XLSX (multiple sheets, inconsistent columns) with Pandas; return best price match.
6- Draft a friendly reply email containing BOM + pricing; send via SMTP / Microsoft Graph.
7- Log + retry logic for API hiccups.

*** Deliverables & Milestones ***
Milestone Description % of Time
M1 Scraper MVP + sample output 25 %
M2 Monthly cron job on Windows Server, DB + tests + anti‑bot guards 20 %
M3 Email‑in ➜ JSON BOM (happy path) 20 %
M4 XLSX matching + email reply logic 20 %
M5 Error handling, logging, Docker/Windows docs, clean handover 15 %

We pay hourly ($15–25). Please include your hour estimate per milestone.

***  What to include in your bid ***
Start with “DIMM‑MATCH” so we know you read everything.

Short intro + links to similar scraping / AI projects.

Preferred stack (Playwright, Selenium, Scrapy, etc.) and how you’ll ensure Windows Server compatibility.

Anti‑bot strategy in a sentence or two (e.g., randomised headers, back‑off, proxy if needed).

Hour estimate per milestone.

Any challenges you foresee and your mitigation plan.

*** Why work with us? ***
Fast, clear feedback from a tech‑savvy team.

Green‑field codebase—you choose sensible tools.

Real business impact; plenty of follow‑on work (extra scrapers, dashboards, more AI).

Looking forward to your bid!