innmind / html
Library to abstract html manipulation
6.4.0
2024-06-26 08:51 UTC
Requires
- php: ~8.2
- innmind/filesystem: ~7.1
- innmind/url: ~4.0
- innmind/xml: ~7.7
- symfony/dom-crawler: >=6.3 <7.0.7
Requires (Dev)
- innmind/coding-standard: ~2.0
- phpunit/phpunit: ~9.0
- vimeo/psalm: ~4.22
README
This library is an extension of innmind/xml
to support working properly with html as a node tree.
Important: you must use vimeo/psalm
to make sure you use this library correctly.
Installation
composer require innmind/html
Usage
use Innmind\Html\Reader\Reader; use Innmind\Xml\Node; use Innmind\Filesystem\File\Content; use Innmind\Immutable\Maybe; $read = Reader::default(); $html = $read( Content::ofString(\file_get_contents('https://github.com/')), ); // Maybe<Node>
Extract some elements of the tree
This library provides some visitors to extract elements out of the dom tree, the example below show you how to extract all the h1
elements of a tree:
use Innmind\Html\Visitor\Elements; $h1s = Elements::of('h1')($html);
Here $h1s
is a set of Element
which are all h1
elements.
Here's the full list of visitors you have access to: