本文目錄一覽:
- 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
原創文章,作者:FTKX,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/143151.html