码迷,mamicode.com
首页 > Web开发 > 详细

简述php关于网页元素抓取方面的技术

时间:2014-05-25 22:50:41      阅读:271      评论:0      收藏:0      [点我收藏+]

标签:页面抓取   php   

对于php抓取网页的内容,可能比较难的就是dom解析这一部分了,这儿的话有几种技术推荐给大家,具体使用哪种就看自己的喜欢了


1.php自带的xpath解析技术

xpath的话具体可以百度一下他的用法,我只举几个简单的例子,废话不多说,代码如下

<?php 

error_reporting(0);
$url=‘http://www.baidu.com‘;//此处写抓取的网页的网址,我随便写的
$html=file_get_contents($url);
$dom=new DOMDocument;
$dom->loadHTML($html);
$xml=simplexml_import_dom($dom);
    $nav=$xml->xpath(‘//p[@id="nv"]‘);//这儿简单解释一下,就是调用simplexml的xpath方法,传入符合xpath语法的字符串就行了,我这儿的意思是,获取所有id属性值为nv的p标签元素
    print_r($nav);


2.phpquery, 

phpquery是基于jQuery选择器的dom解析器,如果经常用jQuery的话会很喜欢这个工具的,下面说说他的用法

<?
include ‘phpQuery.php‘;
phpQuery::newDocumentFile(‘http://job.blueidea.com‘);
$companies = pq(‘#hotcoms .coms‘)->find(‘div‘);
foreach($companies as $company)
{
   echo pq($company)->find(‘h3 a‘)->text()."<br>";
}


简单解释一下 :

  • pq()就像jQuery里的$()
  • 基本上jQuery的选择器都可以用在phpQuery上,只要把’.‘变成’->’
  • phpQuery提供了好几种载入文件的方法,有的使用字符串,有的使用文件(包括url),选 择的时候要注意
3.simplehtmldom

官方手册:http://www.ecartchina.com/php-simple-html-dom/manual.htm

自己看吧,一会就看懂了,我花了半个小时不到的时候就熟练的运用了


对了,这儿还有一个php的抓取系统,phpcrawl,如果想了解php搜索引擎方面的一些知识,可以看看他的源码:

源码下载地址

http://sourceforge.net/projects/phpcrawl/files/PHPCrawl/


简述php关于网页元素抓取方面的技术,布布扣,bubuko.com

简述php关于网页元素抓取方面的技术

标签:页面抓取   php   

原文地址:http://blog.csdn.net/wmda999/article/details/26952541

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!