PHP用DOM方式处理HTML之《Simple HTML DOM》

入门级

simple_html_dom插件
用dom处理html文件的利器
使用:
加载simple_html_dom.php文件

require_once 'simple_html_dom.php'

new simple_html_dom对象

$dom = new simple_html_dom()

加载html

$dom->load($html);

find()方法

$dom->find('div.lookLeftname', 0)->plaintext

class=‘lookLeftname'的div中的纯文本

$dom->find('div.lookLeftname', 0)->innertext

class='lookLeftname'的div中的内部文本

完整测试实例

 代码如下 复制代码

<?php
require_once("simple_html_dom.php");
ini_set('memory_limit','1000M');
ini_set("max_execution_time",6000000);

for($i=1;$i<=21;$i++){
 $html = file_get_html(http://www.111cn.net);
 $as = $html->find('.shopname a');
 $sum = 0;
 foreach($as as $a) {
  if($a->plaintext != "分店"){
   $a->href = "http://www.xx.com".$a->href;
   echo $a->outertext."------".$a->href."-------<br>";
   $sum++;
  }
 }
 echo "<br><br>第 {$i} 页结束 ,数目:{$sum}<hr>";
}
?>

时间: 2024-08-12 12:49:50

PHP用DOM方式处理HTML之《Simple HTML DOM》的相关文章

浅析php插件 Simple HTML DOM 用DOM方式处理HTML

本篇文章是对php插件Simple HTML DOM 用DOM方式处理HTML进行了详细的分析介绍,需要的朋友参考下   simple_html_dom插件 用dom处理html文件的利器使用:加载simple_html_dom.php文件 复制代码 代码如下: require_once 'simple_html_dom.php' new simple_html_dom对象 复制代码 代码如下: $dom = new simple_html_dom() 加载html 复制代码 代码如下: $do

Android创建与解析XML(二) Dom方式

1. Dom概述 Dom方式创建XML,应用了标准xml构造器 javax.xml.parsers.DocumentBuilder 来创建 XML 文档,需要 导入以下内容 javax.xml.parsers javax.xml.parsers.DocumentBuilder javax.xml.parsers.DocumentBuilderFactory javax.xml.parsers.ParserConfigurationException; javax.xml.transform ja

simple-有大神用过PHP Simple HTML DOM Parser这个吗 求指教

问题描述 有大神用过PHP Simple HTML DOM Parser这个吗 求指教 如何用这个获取 <th align="center" width="10%" class="sortable"> 课程号 </th> 获取到 课程号 这三个字 解决方案 include 'simple_html_dom.php'; $s = '<th align="center" width="10%

怎么用simple html dom获取div块内table里的tr数据

问题描述 怎么用simple html dom获取div块内table里的tr数据 <div id="id"> <style> ... } </style> <div class="tips-a tips-a-1" style="display: none;"> ... </div> <div class="tips-a tips-a-2" style=&quo

dom-Java使用DOM方式解析XML,返回的Document对象为null

问题描述 Java使用DOM方式解析XML,返回的Document对象为null // 1.创建一个DocumentBuilderFactory DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); System.out.println("dbf:"+dbf); // 2.创建DocumentBuilder try { DocumentBuilder db = dbf.newDocumentBuilder(

Android 创建与解析XML(二)—— Dom方式

1. Dom概述 Dom方式创建XML,应用了标准xml构造器 javax.xml.parsers.DocumentBuilder 来创建 XML 文档,需要导入以下内容 javax.xml.parsers javax.xml.parsers.DocumentBuilder  javax.xml.parsers.DocumentBuilderFactory  javax.xml.parsers.ParserConfigurationException; javax.xml.transform j

Java下3中XML解析 DOM方式、SAX方式和StAX方式_java

先简单说下前三种方式: DOM方式:个人理解类似.net的XmlDocument,解析的时候效率不高,占用内存,不适合大XML的解析:SAX方式:基于事件的解析,当解析到xml的某个部分的时候,会触发特定事件,可以在自定义的解析类中定义当事件触发时要做得事情:个人感觉一种很另类的方式,不知道.Net体系下是否有没有类似的方式?StAX方式:个人理解类似.net的XmlReader方式,效率高,占用内存少,适用大XML的解析:不过SAX方式之前也用过,本文主要介绍JAXB,这里只贴下主要代码: 复

Android创建与解析XML(二)——详解Dom方式_Android

1. Dom概述 Dom方式创建XML,应用了标准xml构造器 javax.xml.parsers.DocumentBuilder 来创建 XML 文档,需要导入以下内容 javax.xml.parsers javax.xml.parsers.DocumentBuilder javax.xml.parsers.DocumentBuilderFactory javax.xml.parsers.ParserConfigurationException; javax.xml.transform jav

Android应用中使用DOM方式解析XML格式数据的基本方法_Android

DOM比SAX更容易掌握,因为她没有涉及回调和复杂的状态管理,然而,DOM的实现常常将所有的XML节点保存在内存中,这样使的处理较大的文档效率低. XML基本的节点类型 node - DOM基本的数据类型 Element - 最主要处理的对象是Element Attr - 元素的属性 Text - 一个Element 或者Attr的实际内容 Document - 代表整个XML文档,一个Document对象通常也称为一颗DOM树   1.在src目录下新建一个android.xml <?xml

原生js获取iframe中dom元素--父子页面相互获取对方dom元素的方法_javascript技巧

用原生js在父页面获取iframe子页面的元素,以及在子页面获取父页面元素,这是平时经常会用到的方法,这里写一个例子来总结下: 1.父页面(demo.html),在父页面修改子页面div的背景色为灰色,原来为红色: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">