DataLens

Scraping Project: Toko Kita's price watch

Three graded tasks against a practice shop. Collect a competitor's whole catalogue across pages, check stock on detail pages without breaking their rules, and compare their prices with yours through their JSON API, saved as a CSV.

Track project

Open the project

A realistic brief and graded tasks that use the whole track. Included with Pro.

The brief

Toko Kita is a small Indonesian online shop. It started with coffee and kitchen equipment, and this year it began selling phones and audio gear too. That puts it up against Nusantara Gadget, a bigger shop that sells nothing but electronics. When Nusantara Gadget drops a price, Toko Kita's customers notice before the owner does.

The owner wants a price watch: a small set of scripts that collect Nusantara Gadget's prices and stock levels, so the team can see each morning where Toko Kita is too expensive. You'll build it in three tasks against the practice copy of their site at https://nusantara-gadget.test, the same site the scraping track uses.

Scraping someone else's site comes with responsibilities, and this project takes them seriously. Their robots.txt asks for a Crawl-delay of 1 second, and their product pages answer 429 Too Many Requests to anyone who asks for more than four pages a second. Where a site offers a JSON API, it's usually kinder (and more reliable) to use it instead of the HTML.

How the tasks work

Each task is checked automatically, like the module questions. The practice site runs inside the page with a virtual clock, so waiting a second costs no real time. Waiting still matters, though: the site counts the requests, and if you go too fast it starts refusing them, exactly as a real one would. The tickets say what to collect and in what shape. There are hints if you get stuck, but try each task without opening the solution first.

The tasks

#TaskMain skills
1The whole catalogueLocators, attributes, following "Next" across pages
2Stock checks, politelyDetail pages, status codes, honouring Crawl-delay
3Our prices against theirsCalling a JSON API with requests, comparing, saving CSV

The site

These are the parts of Nusantara Gadget the tasks use:

When you're ready, open Task 1.

Open the project

A realistic brief and graded tasks that use the whole track. Included with Pro.