v/vlib/net/html
2025-01-16 16:36:12 +02:00
..
data_structures.v fmt: remove the prefixed module name of const names, that are in the same module (related #22183) (#22185) 2024-09-10 11:25:56 +03:00
dom.v all: remove ancient deprecations (#23479) 2025-01-16 16:36:12 +02:00
dom_test.v net.html: fix semantic inconsistencies of tag retrieving functions (#18558) 2023-06-27 20:10:31 +03:00
html.v net.html: fix doc comments for html.parse functions (#20109) 2023-12-07 18:22:15 +02:00
html_test.v tests: cleanup test cases (#19104) 2023-08-13 13:36:08 +03:00
parser.v fmt: fix formating a file in an oscillating manner (fix #22223, fix #22026) (#22232) 2024-09-17 09:47:38 +03:00
parser_test.v net.html: fix parsing of nested quoted strings in code tags (#18123) 2023-05-07 03:55:02 +03:00
README.md tests: cleanup test cases (#19104) 2023-08-13 13:36:08 +03:00
tag.v v: remove the automatic passing of structs with more than 8 fields by reference (related #17159) (#22547) 2024-10-17 11:04:23 +03:00
tag_test.v fmt: remove the prefixed module name of const names, that are in the same module (related #22183) (#22185) 2024-09-10 11:25:56 +03:00

net/html is an HTML Parser written in pure V.

Usage

import net.html

fn main() {
	doc := html.parse('<html><body><h1 class="title">Hello world!</h1></body></html>')
	tag := doc.get_tags(name: 'h1')[0] // <h1>Hello world!</h1>
	println(tag.name) // h1
	println(tag.content) // Hello world!
	println(tag.attributes) // {'class':'title'}
	println(tag.str()) // <h1 class="title">Hello world!</h1>
}

More examples found on parser_test.v and html_test.v