`
wzjs2011
  • 浏览: 31780 次
文章分类
社区版块
存档分类
最新评论

用php解析html代码

阅读更多
最近想用php写一个爬虫,就需要解析html,在sourceforge上找到一个项目叫做PHP Simple HTML DOM Parser,它可以以类似jQuery的方式通过css选择器来返回指定的DOM元素,功能十分强大。网站建设:http://www.ucantech.com/

首先要在程序的开始引入simple_html_dom.php这个文件

include_once('simple_html_dom.php');

PHP Simple HTML DOM Parser提供了3种方式来创建DOM对象


// Create a DOM object from a string
$html = str_get_html('<html><body>Hello!</body></html>');

// Create a DOM object from a URL
$html = file_get_html('http://www.google.com/');

// Create a DOM object from a HTML file
$html = file_get_html('test.htm');


得到DOM对象后就可以进行各种操作了


// Find all anchors, returns a array of element objects
$ret = $html->find('a');

// Find (N)th anchor, returns element object or null if not found (zero based)
$ret = $html->find('a', 0);

// Find lastest anchor, returns element object or null if not found (zero based)
$ret = $html->find('a', -1);

// Find all <div> with the id attribute
$ret = $html->find('div[id]');

// Find all <div> which attribute id=foo
$ret = $html->find('div[id=foo]');


这里可以使用各种css选择器,就像在jQuery中进行DOM操作一样,非常方便。此外,还有两个特殊的属性可以得到文本和注释的内容


// Find all text blocks
$es = $html->find('text');

// Find all comment (<!--...-->) blocks
$es = $html->find('comment');


当然,还是类似于jQuery,PHP Simple HTML DOM Parser也支持链式操作,以及各种访问DOM元素的简单方法
查看源码打印关于


// Example
echo $html->find("#div1", 0)->children(1)->children(1)->children(2)->id;
// or
echo $html->getElementById("div1")->childNodes(1)->childNodes(1)->childNodes(2)->getAttribute('id'); (fblww-0113)
分享到:
评论

相关推荐

    PHP解析HTML代码库

    本文将深入探讨"PHP解析HTML代码库",包括其核心概念、用途以及如何使用。 1. **核心概念**: - **DOM(Document Object Model)**: DOM是HTML和XML文档的标准表示方法,它将文档视为一个可编程的对象树。PHP中的`...

    浏览器不解析HTML代码,浏览器访问网页直接显示HTML代码,而不是将HTML代码解析出来形成网页. 怎么解决.zip

    总结来说,当浏览器不解析HTML代码而直接显示代码时,通常是因为服务器在响应中没有正确设置"Content-Type"头。解决此问题的关键在于确保后端代码正确设置MIME类型,使其符合HTML文档的标准。通过排查并修复这些问题...

    HTML5PHP一个HTML5解析和序列化PHP库

    1. **解析HTML5文档**:将HTML5字符串或文件解析为DOMDocument对象,方便进一步处理。 2. **创建和修改元素**:动态创建新的HTML元素,或者修改现有元素的属性和内容。 3. **选择和遍历元素**:使用XPath或CSS选择器...

    PHP解析器,解析php文件

    PHP解析器是用于处理PHP(Hypertext Preprocessor)源代码的软件...总的来说,PHP解析器是PHP编程中不可或缺的一部分,它使得开发者能够用PHP编写出强大的Web应用程序,并通过不断的优化和更新,确保代码的高效运行。

    php版html解析器

    该库的核心功能在于能够将HTML代码转化为DOM对象,使得开发者可以像操作PHP数组一样操作HTML元素。这极大地简化了HTML内容的提取和修改任务,尤其对于处理非结构化的网页数据时,显得尤为实用。 二、核心功能与特性...

    php技术 解析外部邮件代码

    首先,我们要理解PHP解析邮件的基本原理。这通常涉及到IMAP(Internet Message Access Protocol)和POP3(Post Office Protocol version 3)协议,它们用于从邮件服务器接收邮件。在PHP中,`imap`函数库提供了与邮件...

    php截取html源代码的简单函数simplehtmldom

    `simplehtmldom`是一个PHP类库,它使得解析和操作HTML变得简单而直观,避免了使用正则表达式可能带来的复杂性和错误。 1. **安装和引入simplehtmldom** 首先,你需要下载`simplehtmldom`库。通常,这个库是一个...

    PHP word解析数学公式

    本篇文章将深入探讨如何使用PHP解析包含数学公式、图片以及数字上下标的Word文档。 1. **PHP与Word文档解析** PHP可以借助一些开源库来解析Word文档,如PHPWord、PHPDocX等。这些库允许开发者读取、创建和编辑Word...

    php(解析*.php文件)

    当用户通过浏览器访问.php文件时,服务器上的PHP解析器会将PHP代码执行并返回结果给浏览器。 Apache是流行的开源Web服务器,它与PHP配合良好,提供了强大的Web服务功能。安装PHP时,需要配置Apache以支持PHP模块。...

    PHP获取网页的 Html源代码输出并执行

    可以使用PHP的DOMDocument和DOMXPath类来解析HTML,进行操作: ```php $doc = new DOMDocument(); $doc-&gt;loadHTML($html); $xpath = new DOMXPath($doc); // 使用DOMXPath查询和操作HTML ``` 在描述中提到的...

    蓝奏云网盘直链解析PHP源码

    这可能需要使用到PHP的DOM解析库(如DOMDocument和DOMXPath)来解析HTML,提取相关信息,或者使用随机化策略改变请求头以避免被识别为机器人。 在实际的代码实现中,可能还会涉及到错误处理和日志记录,确保在解析...

    HTML5DOMDocument一个PHP的更好的HTML5解析器

    1. 解析HTML5文档:通过加载HTML字符串或URL,将其转化为DOM树。 2. 查找元素:利用XPath或CSS选择器查找文档中的特定元素。 3. 修改元素:添加、删除或修改元素属性、文本内容,甚至整个元素结构。 4. 清理和修复...

    js识别图片二维码解析网址代码.zip

    【标题】"js识别图片二维码...开发者可以通过学习和使用这个代码,了解如何在Web应用中集成二维码识别功能,从而实现从图片中自动提取和解析网址等信息。这个技术在移动应用、电商网站、信息分享等领域有着广泛的应用。

    php用xpath解析html的代码实例讲解

    本文主要讲述了在PHP中使用XPath技术解析HTML文档的方法,并提供了两个具体的代码实例来加深理解。 首先,我们要了解什么是XPath。XPath是一种在XML文档中查找信息的语言,它允许我们从XML文档中提取信息,而无需...

    qzone.rar_QQ空间php解析_php 登录QQ空间_php添加留言板_site:www.pudn.com_空间PHP源

    在QQ空间PHP解析中,开发者会编写PHP代码来解析和处理与QQ空间交互的数据,如获取用户信息、发送请求或处理返回结果等。 2. **QQ空间API**:QQ空间提供了API接口,允许外部程序(如PHP)与其进行数据交换。这里的...

    一个好用的php模版解析类

    在Web开发领域,PHP模板引擎是一种非常重要的工具,它允许开发者将HTML代码和PHP代码分离,使得设计者可以专注于页面的布局和样式,而开发者则处理业务逻辑和数据处理。"一个好用的PHP模版解析类"是针对这个主题的...

    php 网站tpl模板以及解析类

    PHP解析类是实现TPL模板的关键组件,它负责读取模板文件,解析其中的PHP代码,然后将其渲染为HTML输出。解析过程通常包括以下步骤: 1. **加载模板文件**:解析类首先需要找到指定的TPL模板文件,这通常通过模板...

    php dom 解析类和函数文件封装

    `simple_html_dom`库提供了一个友好的面向对象的API,相比DOM扩展更易于理解和使用,特别适合处理不规范的HTML代码。 1. **simple_html_dom类**:这个库的核心是`simple_html_dom`类,它表示一个HTML文档的根节点。...

    基于PHP的格式化HTML代码功能的设计与实现.pdf

    该步骤使用PHP的DOMDocument类来实现HTML代码的解析。 2. 格式化HTML代码生成 格式化HTML代码生成是指根据解析后的HTML代码生成格式化后的HTML代码。该步骤使用PHP的DOMDocument类和XSLT来实现格式化HTML代码的生成...

Global site tag (gtag.js) - Google Analytics