RubyGems Navigation menu

scrapetor 0.2.0

Scrapetor is a Ruby HTML parsing + scraping toolkit. The parser is a native C arena DOM with structural indexes built at parse time and NEON SIMD scanners in the SAX hot loop. A streaming extraction engine compiles the schema DSL into a single forward pass — no DOM materialised, one Ruby boundary crossing per document. On builds where libcurl is available, Scrapetor::Fetcher adds an HTTP/2-capable fetch layer with per-thread connection cache, shared DNS + TLS session pool, in-process gzip / deflate / brotli / zstd decoding, iconv charset transcoding, retry + exponential backoff, ETag / Last-Modified disk cache with bulk revalidation, per-host throttle, cookie jar, basic + bearer auth, proxy, and three bulk concurrency models (parallel_fetch / multi_fetch / streaming multi_each). Scrapetor::Session ties the cookie / auth / throttle / retry policies together. Also ships robots.txt + sitemap.xml parsers, a bounded-memory streaming HTML parser, and structured-data extractors (JSON-LD, OpenGraph, Schema.org, Microdata, RDFa, Twitter Cards). The Net::HTTP-based Scrapetor.fetch is preserved as the no-libcurl fallback.

Gemfile:
=

install:
=

Versions:

  1. 0.2.0 May 26, 2026 (201 KB)

Development Dependencies (6):

benchmark-ips ~> 2.0
minitest ~> 5.0
nokogiri >= 1.13
nokolexbor >= 0.6
rake ~> 13.0
webrick ~> 1.7

Owners:

Pushed by:

Authors:

  • Alaa Abdulridha

SHA 256 checksum:

=

Total downloads 72

For this version 72

Version Released:

License:

MIT

Required Ruby Version: >= 2.7.0

New versions require MFA: true

Version published with MFA: true

Required Rubygems Version: >= 3.0.0

Links: