使用php simple html dom parser解析html標(biāo)簽
Jun 13, 2016 am 10:53 AM
?
?
使用php simple html dom parser解析html標(biāo)簽
用了一下
PHP Simple HTML DOM Parser?
解析HTML頁(yè)面,感覺(jué)還不錯(cuò),它能創(chuàng)建一個(gè)DOM tree方便你解析html里面的內(nèi)容。用來(lái)抓東西挺好的。
?
附帶一個(gè)例子,你也到sourceforge下載壓縮包看里面的例子:
Scraping data with PHP Simple HTML DOM Parser?
?
PHP Simple HTML DOM Parser , written in PHP5+, allows you to manipulate HTML in a very easy way. Supporting invalid HTML, this parser is better then other PHP scripts using complicated regexes to extract information from web pages.
Before getting the necessary info, a DOM should be created from either URL or file. The following script extracts links & images from a website:
view plain copy to clipboard print ??
?
Php代碼 // Create DOM from URL or file ? ?
$html = file_get_html('http://www.microsoft.com/'); ? ?
? ?
// Extract links ? ?
foreach($html->find('a') as $element) ? ?
? ? ? ?echo $element->href . '
'; ? ??
? ?
// Extract images ? ?
foreach($html->find('img') as $element) ? ?
? ? ? ?echo $element->src . '
'; ?
[php]?
// Create DOM from URL or file ??
$html = file_get_html('http://www.microsoft.com/'); ?
// Extract links ??
foreach($html->find('a') as $element) ?
? ? ? ?echo $element->href . '
'; ??
// Extract images ??
foreach($html->find('img') as $element) ?
? ? ? ?echo $element->src . '
'; ?
?
// Create DOM from URL or file
$html = file_get_html('http://www.microsoft.com/');
// Extract links
foreach($html->find('a') as $element)
? ? ? ?echo $element->href . '
';?
// Extract images
foreach($html->find('img') as $element)
? ? ? ?echo $element->src . '
';
The parser can also be used to modify HTML elements:
view plain copy to clipboard print ??
?
Php代碼 // Create DOM from string ? ?
$html = str_get_html('
? ?
$html->find('div', 1)->class = 'bar'; ? ?
? ?
$html->find('div[id=simple]', 0)->innertext = 'Foo'; ? ?
? ?
// Output:
echo $html; ?
[php]?
// Create DOM from string ??
$html = str_get_html('
$html->find('div', 1)->class = 'bar'; ?
$html->find('div[id=simple]', 0)->innertext = 'Foo'; ?
// Output:
echo $html; ?
?
// Create DOM from string
$html = str_get_html('
$html->find('div', 1)->class = 'bar';
$html->find('div[id=simple]', 0)->innertext = 'Foo';
// Output:
echo $html;
Do you wish to retrieve content without any tags?
view plain copy to clipboard print ??
?
Php代碼 echo file_get_html('http://www.yahoo.com/')->plaintext; ?
[php]?
echo file_get_html('http://www.yahoo.com/')->plaintext; ?
?
echo file_get_html('http://www.yahoo.com/')->plaintext;In the package files of this parser ([url]http://simplehtmldom.sourceforge.net/[/url]) you can find some scraping examples from digg, imdb, slashdot. Let’s create one that extracts the first 10 results (titles only) for the keyword “php” from Google:
view plain copy to clipboard print ??
?
Php代碼 $url = 'http://www.google.com/search?hl=en&q=php&btnG=Search'; ? ?
? ?
// Create DOM from URL ? ?
$html = file_get_html($url); ? ?
? ?
// Match all 'A' tags that have the class attribute equal with 'l' ? ?
foreach($html->find('a[class=l]') as $key => $info) ? ?
{ ? ?
echo ($key + 1).'. '.$info->plaintext."
\n"; ? ?
} ?
[php]?
$url = 'http://www.google.com/search?hl=en&q=php&btnG=Search'; ?
// Create DOM from URL ??
$html = file_get_html($url); ?
// Match all 'A' tags that have the class attribute equal with 'l' ??
foreach($html->find('a[class=l]') as $key => $info) ?
{ ?
echo ($key + 1).'. '.$info->plaintext."
\n"; ?
} ?
?
$url = 'http://www.google.com/search?hl=en&q=php&btnG=Search';
// Create DOM from URL
$html = file_get_html($url);
// Match all 'A' tags that have the class attribute equal with 'l'
foreach($html->find('a[class=l]') as $key => $info)
{
echo ($key + 1).'. '.$info->plaintext."
\n";
}NOTE Make sure to include the parser before using any functions of it:
view plain copy to clipboard print ??
Php代碼?
include 'simple_html_dom.php'; ?
[php]?
include 'simple_html_dom.php'; ?
?
include 'simple_html_dom.php';For more information regarding the usage of this function consider checking the ‘PHP Simple HTML Dom Parser’ Manual. To download the package files use the following URL: [url]
分享到:?

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Die Datei "Settings.JSON" befindet sich auf dem Pfad auf Benutzerebene oder Arbeitsbereichsebene und wird verwendet, um die VSCODE-Einstellungen anzupassen. 1. Benutzer-Level-Pfad: Windows ist C: \ Benutzer \\ AppData \ Roaming \ Code \ User \ Settings.json, MacOS is /users//library/applicationsupport/code/user/settings.json, Linux is /home/.config/code/usser/setings.json; 2. Pfad auf Arbeitsbereichsebene: .VSCODE/Einstellungen im Projekt Root Directory

ReadOmpropertiesinphp8.2canonlyBeSignedoncinstructororatDeklarationandCannotBemodifiedAfterward, durchsetzungsvermutbarkeitatheluagelevel.2.ToachedevimmiMmutability, WrapMutabletypesLikearrayObjecustomimmutablecollections

Verwenden Sie zun?chst JavaScript, um die Einstellungen für Benutzersysteme und lokal gespeicherte Themeneinstellungen zu erhalten und das Seitenthema zu initialisieren. 1. Die HTML -Struktur enth?lt eine Schaltfl?che zum Ausl?sen von Themenwechsel. 2. CSS verwendet: root, um helle Themenvariablen zu definieren, .Dark-Mode-Klasse definiert dunkle Themenvariablen und wendet diese Variablen über var () an. 3.. JavaScript erkennt bevorzuge-farbige Scheme und liest LocalStorage, um das ursprüngliche Thema zu bestimmen. 4. Schalten Sie die Dark-Mode-Klasse im HTML-Element beim Klicken auf die Schaltfl?che und speichern Sie den aktuellen Status vor LocalStorage. 5. Alle Farb?nderungen werden mit einer übergangsanimation von 0,3 Sekunden begleitet, um den Benutzer zu verbessern

Verwenden Sie Leistungsanalyse-Tools, um Engp?sse zu lokalisieren, VisualVM oder JProfiler in der Entwicklung und Testphase zu verwenden und Async-Profiler in der Produktionsumgebung Priorit?t zu geben. 2. Reduzieren Sie die Objekterstellung, verwenden Sie Objekte wieder, verwenden Sie StringBuilder, um String -Splei?en zu ersetzen und entsprechende GC -Strategien auszuw?hlen. 3.. Optimieren Sie die Auswahl der Sammlung, w?hlen Sie die Anfangskapazit?t gem?? der Szene aus; V. 5. Tune JVM-Parameter, festlegen, angemessene Haufengr??e und Müllsammler mit geringer Latenz einstellen und GC-Protokolle aktivieren; 6. Vermeiden Sie die Reflexion auf Codeebene, ersetzen Sie Wrapper -Klassen durch Grundtypen, Verz?gerungsinitialisierung und verwenden Sie endgültige und statische. 7. Kontinuierliche Leistungstest und überwachung, kombiniert mit JMH

Um eine nicht ordnungsgem??e HTML -Liste zu erstellen, müssen Sie ein Tag verwenden, um einen Listencontainer zu definieren. Jedes Listenelement ist mit einem Tag verpackt, und der Browser fügt automatisch Kugeln hinzu. 1. Erstellen Sie eine Liste mit einem Tag; 2. Jedes Listenelement ist mit einem Tag definiert. 3. Der Browser generiert automatisch Standard -Punkt -Symbole. 4. Unterverschiedene k?nnen durch Verschachtelung implementiert werden. 5. Verwenden Sie das Attribut vom Typ Listenstil von CSS, um den Symbolstil wie Scheibe, Kreis, Quadrat oder keine zu ?ndern. Verwenden Sie diese Tags korrekt, um eine nicht ordnungsgem??e Standardliste zu generieren.

SemantichtmlimprovesbothseoandAccessibilityByuseing -meaningfulTagSthatConveyContentStructure.1) iTenhancesseothroughbetterContentHierarchyWithProperHeadinglevels, verbesserteIndexingviaelementSlikaND und -SupportforrichsnippetsususingStrostStrostStrostStrostStrostStrostStrostaustaustaustrota.2)

UseGuzzleForrobUtttprequestswithheaderStimeouts.2.ParsehtmleffictionLyWithSymfonydomcrawleruSusectors.3.HandlejavaScript-HeavysitesByintegratingPuppeteerviaPexec () torenderpages.4.respactroboBoBoBoBoThoter- und addDelays, addDelays, rotdelayents, rotateuseragents und rotateuseragents und ushEdelays, usaDelays, rot

UsTheelementWitHinatagTocreateEmanticSearchfield.2.IncludeaForAccessibility, settheform'Saction undMethod = "AttributestosendDatoAsearchendPointWithasharableUrl.
