Labirint Book Price & Stock Monitor
Pricing
from $10.00 / 1,000 results
Labirint Book Price & Stock Monitor
Scrape & monitor the Labirint (labirint.ru) book catalogue by genre, series or publisher — title, publisher, series, genre, price, list price, discount % and availability — with price & stock change-tracking between runs.
Pricing
from $10.00 / 1,000 results
Rating
0.0
(0)
Developer
Sasha Ebashu
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
16 days ago
Last modified
Categories
Share
Scrapes the Labirint book catalogue (labirint.ru) by genre, series or publisher — title, price, publisher's list price, availability and genre — and tracks how prices and stock change between runs.
What you get
One row per book:
store, productId, name, publisher, series, genre, price, listPrice,
discountPercent, currency, available, url, categoryPath, scrapedAt
price vs listPrice: Labirint shows two numbers on every book — the publisher's list price
and its own selling price, typically about half. price is what a customer pays and listPrice is
the crossed-out number. This is Labirint's permanent pricing display, not a temporary promo, so
discountPercent describes the shop's standing markdown rather than a sale that will end.
series is only present for books that belong to one, which is roughly 40% of a typical listing.
There is no author field — Labirint does not expose one on listing pages.
Monitor mode
Each row also gets changeType, previousPrice, priceLow30, priceHigh30, firstSeenAt,
lastConfirmedAt.
changeType | Means |
|---|---|
new | First time this book was seen in this scope |
price_up / price_down | The selling price moved |
stock_change | Availability flipped |
out_of_stock | Was in the listing before and has now vanished from it |
unchanged | Nothing moved |
out_of_stock is reported once (carrying the book's last known title, URL and price), then
dropped from the snapshot. It is skipped whenever the run did not cover every listing in full —
cut short by the time budget, the cost cap, Max results, or a listing that returned nothing —
because then "missing" would just mean "not reached". The log says so when that happens.
Input
| Field | What it does |
|---|---|
| Listing URLs | Any Labirint listing: a genre (https://www.labirint.ru/genres/2308/), a series, a publisher page, or a filtered listing. Query strings are preserved. |
| Max pages per listing | The Actor stops on its own when a listing stops yielding new books. |
| Max results | Global cap. 0 = no limit. |
| Max concurrency | Parallel listing requests. Labirint is slow, so keep this modest. |
| Monitor mode / Output only changed | Change-tracking, described above. |
Notes & limits
- Use the default residential RU proxy. This is not a preference — measured twice: over a datacenter proxy labirint.ru timed out on 3 of 8 requests in one test and on all 8 in another, and when it did answer it served a reduced card markup with no selling price and no availability. An early build defaulting to datacenter reported the list price as the selling price on 95 of 98 rows. Over residential the same listing returns all fields on every card, and about 10x faster.
- Listing pages repeat a few titles in a "Бестселлеры жанра" carousel above the grid, so the same book can appear twice in the HTML. Rows are deduplicated by book id — you are never billed twice for the same book.
- End of pagination is detected by content. Past the last page Labirint keeps serving a valid listing rather than a 404, so the crawl stops when a page adds no new book ids.
- The Actor honours your Maximum cost per run: it stops when the cap is reached and says so.
- If a listing yields nothing, it is reported in the log and saved to the
EMPTY_CATEGORIESrecord rather than passing silently.