本文目录一览:
- 1、利用PHP Simple HTML DOM获取网页指定数据 名称和链接
- 2、php simple_html_dom.php 类到底怎么用?我能new 个对象出来,但是就是find()匹配不到元素。。。
- 3、php关于 simple_html_dom的用法
- 4、php官方为什么不推荐使用单元测试如phpunit或simpletest
- 5、为什么我用PHP simple_xml里的函数不好使,把例子的代码粘贴过来也不好使
利用PHP Simple HTML DOM获取网页指定数据 名称和链接
抓取页面上的列表数据,以及内容里面信息
1 ?php
2 include_once 'simple_html_dom.php';
3 //获取html数据转化为对象
4 $html = file_get_html('');
5 //A-Z的字母列表每条数据是在id=letter-focus 的div内class= letter-focus-item的dl标签内,用find方法查找即为
6 $listData=$html-find("#letter-focus .letter-focus-item");//$listData为数组对象
7 foreach($listData as$key=$eachRowData){
8 $filmName=$eachRowData-find("dd span",0)-plaintext;//获取影视名称
9 $filmUrl=$eachRowData-find("dd a",0)-href;//获取dd标签下影视对应的地址
10 //获取影视的详细信息
11 $filmInfo=file_get_html("".$filmUrl);
12 $filmDetail=$filmInfo-find(".info dl");
13 foreach($filmDetail as $film){
14 $info=$film-find("dd");
15 $row=null;
16 foreach($info as $childInfo){
17 $row[]=$childInfo-plaintext;
18 }
19 $cate[$key][]=join(",",$row);//将影视的信息存放到数组中
20 }
21 }
这样通过simple_html_dom,就可以将paopaotv.com影视列表中信息,以及影视的具体信息就抓取到了,之后你可以继续抓取影视详细页面上的视频地址信息,然后将该影视的所有信息都存放到数据库中。
下面是simple_html_dom常用的属性以及方法:
1 $html = file_get_html('');
2 $e = $html-find("div", 0);
3 //标签
4 $e-tag;
5 //外文本
6 $e-outertext;
7 //内文本
8 $e-innertext;
9 //纯文本
10 $e-plaintext;
11 //子元素
12 $e-children ( [int $index] );
13 //父元素
14 $e-parent ();
15 //第一个子元素
16 $e-first_child ();
17 //最后一个子元素
18 $e-last_child ();
19 //后一个兄弟元素
20 $e-next_sibling ();
21 //前一个兄弟元素
22 $e-prev_sibling ();
23 //标签数组
24 $ret = $html-find('a');
25 //第一个a标签
26 $ret = $html-find('a', 0);
php simple_html_dom.php 类到底怎么用?我能new 个对象出来,但是就是find()匹配不到元素。。。
//查找html文档中的超链接元素
$a = $html-find('a');
//查找文档中第(N)个超链接,如果没有找到则返回空数组.
$a = $html-find('a', 0);
// 查找id为main的div元素
$main = $html-find('div[id=main]',0);
// 查找所有包含有id属性的div元素
$divs = $html-find('div[id]');
// 查找所有包含有id属性的元素
$divs = $html-find('[id]');
php关于 simple_html_dom的用法
这是一个 PHP5 的 HTML 文档解析器,示例代码:
// 创建一个html对象,这个抓的是谷歌的首页
$html = file_get_html('');
//找到对象中所有的img的src
foreach($html-find('img') as $element)
echo $element-src . 'br';
//找到对象中所有的a的href
foreach($html-find('a') as $element)
echo $element-href . 'br';
就是以前你采集的时候,先file_get_contents把目标url的页面源码抓过来,假如要页面里的a标签的href,你要用正则分析。现在有了这个simple_html_dom。直接可以帮你分析出你需要的a标签里的href。
请采纳答案,支持我一下。
php官方为什么不推荐使用单元测试如phpunit或simpletest
在PHP领域,单元测试的工具主要有 PHPUNIT,PHPUNIT2和SimpleTest三种。
其中PHPUNIT在功能上很简单,不算完善;
PHPUNIT2是专门为PHP5写的单元 测试工具,在结构和功能上都向Junit看齐;
而SimpleTest则是一套非常实用的测试工具,其中的webTest支持对web程序界面的测试,是 Easy最为推荐的一款测试工具。在本文中,我们选择SimpleTest进行介绍。
相关知识:PHPUNIT2也是一款很好的工具,尤其是架构上有很多值得圈点之处,希望将来能有机会在专门的文章中和大家分享。
SimpleTest:就是这么Simple安装SimpleTest很简单,上sf.net上下载一个源码包,然后解压到web目录下就可以使用了,这里就不多说。
为什么我用PHP simple_xml里的函数不好使,把例子的代码粘贴过来也不好使
simple xml 扩展没开, 搜索 php.ini 内的 simple 把前面的 ; 去掉,重启apache