floki
floki copied to clipboard
Floki is a simple HTML parser that enables search for nodes using CSS selectors.
It would be great to support XPath selectors. Looks like https://github.com/expelledboy/exml gives us a head start. What are your thoughts?
Via #37 it looks like handling unclosed tags is a goal for built-in HTML parser. But I was surprised that a tag name `floki` was added to the parsed html...
## Description parse_fragment does not parse whitespace in HTML (or XML) text properly, keeping it as-is when it should not. ## To Reproduce Steps to reproduce the behavior: - Using...
Bumps fast_html from 2.2.0 to 2.3.0. [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a...
Today Finder.find expects a list of html_node tuples, and returns an HTMLTree and a list of resulting HTMLNode. To allow the changes for #515, we need to return html_nodes only...
To make sure we don't have any regression on the changes for https://github.com/philss/floki/issues/515, we need to run all selector tests with both html node tuple list and with HTMLTree. This...
## Feature goal Currently, Floki.find always creates an HTMLTree, which seems like not always necessary. Consider finding all links, or elements with particular id or class. Basically all cases when...
This makes the interfaces simplier. We don't need to support iodata for now yet.
## Feature goal (From JSoup [docs](https://jsoup.org/cookbook/extracting-data/selector-syntax)) > :has(selector): find elements that contain elements matching the selector; e.g. div:has(p) ```elixir input = “foo$100foo” result = Floki.find(html, “div:has(p) > h2”) ```
Hi! I maintain a tiny Floki wrapper called [EasyHTML](https://github.com/wojtekmach/easyhtml) which adds a struct around nodes and thus we can implement protocols and behaviours. Here's an example: ```elixir Mix.install([:easyhtml]) html =...