SPB Git forge

spb/rareindex

Public
54commits 1branches 0releases
7.1 MBsize
maindefault branch
10 days agolast push
TypeScript 61.9% HTML 37.2% SQL 0.7%

# numisbids — NumisBids prices realized

Aggregator of numismatic auction catalogues (≈ 370 houses: CNG, Leu, Künker partners, Noonans, Heritage world coins, cgb.fr, …) with hammer prices for closed sales.

  • Engine: Firecrawl (Cloudflare 403 on plain HTTPS), Scrapfly fallback. 1 credit per page; a category page carries 100 lots.
  • Flow: /results → sales with a "Prices realized" link (sale id) → /sale/<sid> (firm, auction title, closing date, categories) → /sale/<sid>/category/<cid>?pg=N → one raw record per page.
  • Records: sale per sold lot — hammer price in the printed currency (buyerPremiumIncluded=false, NumisBids: "Buyer's premium is not included"), sale date = closing date, estimate / firm / section in attributes.metadata, identifiers.numisbids_lot = <sid>/<lot>, grade parsed from the description (PCGS/NGC/PMG…), isBundle for large lots.
  • Cursor: { doneSales, inProgress: { sid, categories, catIndex, page }, minSeenSid, backfillSid, done }. Backfill walks sale ids downwards to 1 (2013).
  • Config: salesPerRun, pagesPerRun, skipSections (literature, antiquities).
  • Smoke: set -a; . ./.env; set +a; pnpm tsx connectors/firecrawl/numisbids/_smoke.ts 2