~/talk

The Art of Web Scraping. Trees, Algorithms and JS Magic

TalkinUkrainianat React+ fwdays’25 · on Saturday, 2025-10-18· [javascript, web-platform]
links:none on file
slides:none on file

A presenter built a small DSL parser and an NPM package called харвестер that turns template strings into tree structures, then fuzzily matches those trees against the page DOM using a score heuristic to extract fields as JSON. The tool runs inside Playwright or Puppeteer for live scraping (with stealth browsers to avoid bot detection), and was demonstrated extracting images, titles and prices from Rozetka and Amazon while tolerating many DOM changes; claimed optimizations yield large speedups (up to 100–130,000×) with examples like ~15 s for a full product extract and ~200 ms per complex Amazon block.

AI-written summary · about

  1. 0:00Web scraping with JS
  2. 3:55Traditional data collection issues
  3. 6:26DSL for fuzzy data search
  4. 10:57Tree comparison in scraping
  5. 17:38Search algorithms and scoring
  6. 20:48Library performance optimization
  7. 27:32Comparison with AI solutions
  8. 29:20Live scraping demo
  9. 35:29Playwright & Puppeteer integration
  10. 39:46Library API features
  11. 41:53Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.