{"repo":"serpapi/nokolexbor","free":true,"listed":false,"github":"https://github.com/serpapi/nokolexbor","clone":"git clone https://github.com/serpapi/nokolexbor.git","description":"High-performance HTML5 parser for Ruby based on Lexbor, with support for both CSS selectors and XPath.","language":"C","stars":415,"topics":["c-extension","css","html5","parser","ruby","web-scraping","xpath","serpapi"],"license":null,"category":"scrapers-browser-automation","readme_excerpt":"Nokolexbor Nokolexbor is a drop-in replacement for Nokogiri. It's 4.7x faster at parsing HTML and up to 1352x faster at CSS selectors. It's a performance-focused HTML5 parser for Ruby based on Lexbor. It supports both CSS selectors and XPath. Nokolexbor's API is designed to be 1:1 compatible as much as possible with Nokogiri's API. Requirements Nokolexbor is shipped with pre-compiled gems on most common platforms: Linux: x86 64 and aarch64 macOS: x86 64 and arm64 Windows: ucrt64 If you are on a supported platform, just jump to the Installation section. Otherwise, you need to install CMake to compile C extensions: macOS Linux (Debian, Ubuntu, etc.) Installation Add to your Gemfile: Then, run bundle install . Or, install the gem directly: Quick start Features Nokogiri-compatible APIs. High performance HTML parsing, DOM manipulation and CSS selectors engine. XPath search engine (ported from libxml2). Text nodes CSS selector support: ::text . Searching methods overview css and at css Based on Lexbor. Only accepts CSS selectors, doesn't support mixed syntax like div#abc /text() . To select text nodes, use pseudo element ::text . e.g. div#abc ::text . Performance is much higher than libxml2 based methods. xpath and at xpath Based on libxml2. Only accepts XPath syntax. Works in the same way as Nokogiri's xpath and at xpath . nokogiri css and nokogiri at css (requires Nokogiri installed) Based on libxml2. Accept mixed syntax like div#abc /text() . Works in the same way as Nokogiri's ","default_branch":null,"files":null,"tree":[],"storefront":"/r/serpapi","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/serpapi/nokolexbor/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}