基于simple_html_dom的使用小结

  次阅读 来源:互联网(转载协议) 2016-03-02 15:25 我要评论(0)

本篇文章对simple html dom的使用进行了详细的分析介绍,需要的朋友参考下

复制代码 代码如下:

<P>简单范例

<?phpinclude "simple_html_dom.php" ;//加载simple_html_dom.php文件

$html= file_get_html('http://www.google.com/');//获取html$dom = newsimple_html_dom();//new simple_html_dom对象$dom->load($html)//加载html// Find all images foreach($dom->find('img') as $element) {//获取img标签数组echo $element->src . '<br>';//获取每个img标签中的src}// Find all links foreach($dom->find('a') as$element){//获取a标签的数组echo $element->href . '<br>';//获取每个a标签中的href}</P><P>

$html =file_get_html('http://slashdot.org/');//获取html$dom = newsimple_html_dom();//new simple_html_dom对象$dom->load($html);//加载html// Find all article blocksforeach($dom->find('div.article')as $article) {$item['title']= $article->find('div.title',0)->plaintext; //plaintext 获取纯文本$item['intro']=$article->find('div.intro', 0)->plaintext;$item['details'] =$article->find('div.details', 0)->plaintext;$articles[] =$item;}print_r($articles);</P><P>}</P><P>

//Create DOM from string</P><P>$html = str_get_html('<divid="hello">Hello</div><divid="world">World</div>');

$dom = new simple_html_dom();//new simple_html_dom对象</P><P>$dom->load($html);//加载html

$dom->find('div',1)->class = 'bar';//class = 赋值给第二个div的class赋值</P><P>$dom->find('div[id=hello]',0)->innertext = 'foo';//innertext内部文本</P><P>echo $dom;</P><P>// Output: <divid="hello">foo</div><div id="world"class="bar">World</div></P><P></P><P>DOM methods & properties

Name Description

void __construct ( [string $filename] ) 构造函数,将文件名参数将自动加载内容,无论是文本或文件/ url。

string plaintext 纯文本

void clear () 清理内存

void load ( string $content ) 加载内容

stringsave ( [string $filename] ) Dumps the internal DOM tree back into astring. If the $filename is set, result string will save to file.

void load_file ( string $filename ) Load contents from a from a file or a URL.

void set_callback ( string $function_name ) 设置一个回调函数。

mixed find ( string $selector [, int $index] ) 找到元素的CSS选择器。返回第n个元素对象如果索引设置,否则返回一个数组对象。 </P>

<P> 4.find 方法详细介绍</P><P>

find ( string $selector [, int $index] )

// Find all anchors, returns a array of element objects a标签数组

$ret= $html->find('a');</P><P>// Find (N)th anchor, returnselement object or null if not found (zero based)第一个a标签

$ret =$html->find('a', 0);</P><P>// Find lastest anchor,returns element object or null if not found (zero based)最后一个a标签

$ret = $html->find('a', -1); </P><P>// Find all <div> with the id attribute

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

$ret = $html->find('div[id=foo]'); </P><P>

// Find all element which id=foo

$ret = $html->find('#foo');</P><P>// Find all element which class=foo

$ret = $html->find('.foo');</P><P>// Find all element has attribute id

$ret = $html->find('*[id]'); </P><P>// Find all anchors and images a标签与img标签数组

本站部分文章来源于网络以及网友投稿,本站只负责对文章进行整理、排版、编辑,是出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如果您有什么意见或建议,请联系QQ28-1688-302!

人工智能实验室
相关文章相关文章
  • 让AI触手可及  Qualcomm携手创通联达推出全新终端侧AI开发套件

    让AI触手可及 Qualcomm携手创通联达推出全新终端侧AI开发套件

  • 长虹新款智能语音空调,告诉你空调也能玩Siri

    长虹新款智能语音空调,告诉你空调也能玩Siri

  • 品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

    品友互动为Digital Travel APAC2018 唯一受邀中国AI企业

  • 第一批国家重点研发计划公布,旷视科技开启“五年行动”

    第一批国家重点研发计划公布,旷视科技开启“五年行动”

网友点评网友点评
阅读推荐阅读推荐

据外媒报道,STEER打造了首款完全自动驾驶停车技术,旨在使常规车辆转变为无人驾驶车辆。STEER的首款技术应用是4级自动驾驶及网络安全停车...

近日,美国软性机器抓手制造商 Soft Robotics 宣布,获得 2000 万美元的融资,本轮投资者包括 Scale Venture Partners,Calibrate Ventures...

据外媒报道,加州车管局发布了《2017自动驾驶脱离报告(California Autonomous Vehicle Disengagement Reports)》,其中谈及了脱离的具体...

用人机语音交互,来解决智能家居适老的问题;通过家庭门禁与安防套件、空气净化套件、可燃气体与有害气体监控套件等相互联动,在不同生活情...