Tutorial ini menunjukkan bagaimana untuk menghuraikan HTML dengan cekap menggunakan parser sumber terbuka, mengelakkan kerumitan ekspresi biasa. Kami akan mengikis Envato Tuts sebagai contoh, mengekstrak tajuk artikel dan penerangan. Ini adalah untuk tujuan ilustrasi; Ingatlah untuk sentiasa mendapatkan kebenaran sebelum mengikis laman web.
Mulailah dengan memasang komposer, pengurus pakej php, untuk memudahkan pemasangan perpustakaan.
Dokumentasi
---
coretan kod teras:
Ini termasuk perpustakaan yang diperlukan dan memulakan array untuk menyimpan data artikel. Fungsi
use voku\helper\HtmlDomParser; require_once 'vendor/autoload.php'; $articles = []; getArticles('https://code.tutsplus.com/tutorials');
getArticles
ini melangkah melalui setiap elemen artikel (
$items = $html->find('article'); foreach($items as $post) { $articles[] = [ /* title */ $post->findOne(".posts__post-title")->firstChild()->text(), /* description */ $post->findOne("posts__post-teaser")->text() ]; }
akan mengandungi pasangan tajuk dan penerangan. Contohnya: <article>
$articles
$articles[0][0] = "My Article Name Here"; $articles[0][1] = "This is my article description";
HTML yang berkaitan:
Skrip mendapati pautan ini, mengekstrak atribut
, dan panggilan rekursif<a aria-label="next" class="pagination__button pagination__next-button" href="https://www.php.cn/link/a3cdf7cabc49ea4612b126ae2a30ecbf" rel="next"><i class="fa fa-angle-right"></i></a>
dibersihkan untuk mengelakkan keletihan memori. href
Parsing laman web besar boleh memakan masa. Tutorial ini menyediakan asas untuk parsing HTML menggunakan perpustakaan mesra pengguna. Walaupun perpustakaan ini mudah, ingat bahawa kaedah lain, seperti manipulasi DOM terbina dalam PHP dengan XPath, wujud. Sentiasa mengutamakan mendapatkan kebenaran sebelum mengikis mana -mana laman web.
Atas ialah kandungan terperinci HTML Parsing dan Skrin Mengikis dengan Perpustakaan Dom HTML Mudah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!