HTML/XML parser and web scraper for NodeJS.
Uses native libxml C bindings
Clean promise-like interface
Supports CSS 3.0 and XPath 1.0 selector hybrids
Slick selectors, and
No large dependencies like jQuery, cheerio, or jsdom
Compose deep and complex data structures
HTML parser features
- Fast parsing
- Very fast searching
- Small memory footprint
HTML DOM features
- Load and search ajax content
- DOM interaction and events
- Execute embedded and remote scripts
- Execute code in the DOM
HTTP request features
- Logs urls, redirects, and errors
- Cookie jar and custom cookies/headers/user agent
- Login/form submission, session cookies, and basic auth
- Single proxy or multiple proxies and handles proxy failure
- Retries and redirect limits
var osmosis = ;
For documentation and examples check out https://rchipka.github.io/node-osmosis/global.html
Please consider a donation if you depend on web scraping and Osmosis makes your job a bit easier.
Your contribution allows me to spend more time making this the best web scraper for Node.
- $25 - A custom Osmosis scraper to extract the data you need efficiently and in as few lines of code as possible.
- $25/month - Become a sponsor. Your company will be listed on this page. Priority support and bug fixes.