php下通过curl抓取yahoo boss 搜索结果的实现代码

 更新时间:2011年06月10日 00:29:44   作者:  
php下通过curl抓取yahoo boss 搜索结果的实现代码,需要的朋友可以参考下。
1.编写curl类,进行网页内容抓取
复制代码 代码如下:

class CurlUtil
{
private $curl;
private $timeout = 10;
/**
* 初始化curl对象
*/
public function __construct()
{
$this->curl = curl_init();
curl_setopt($this->curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($this->curl, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)");
curl_setopt($this->curl, CURLOPT_HEADER, false); //设定是否显示头信息
curl_setopt($this->curl, CURLOPT_NOBODY, false); //设定是否输出页面内容
curl_setopt($this->curl, CURLOPT_CONNECTTIMEOUT, $this->timeout);
curl_setopt($this->curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($this->curl, CURLOPT_AUTOREFERER, true);
}
/**
* 注销函数 关闭curl对象
*/
public function __destruct()
{
curl_close($this->curl);
}
/**
* 获取网页的内容
*/
public function getWebPageContent($url)
{
curl_setopt($this->curl, CURLOPT_URL, $url);
return curl_exec($this->curl);
}
}


2.创建curl对象
复制代码 代码如下:

$CurlUtil = new CurlUtil();

3.抓取yahoo搜索结果
复制代码 代码如下:

function getYahooSearch(CurlUtil $curl, $key)
{
$key = urlencode($key);
$searchUrl = "http://boss.yahooapis.com/ysearch/web/v1/$key?appid=你的雅虎appid&lang=tzh&region=hk&abstract=long&count=20&format=json&start=0&count=10";
$josnStr = $curl->getWebPageContent($searchUrl);
$searchDataInfo = json_decode($josnStr, true);
$searchData = $searchDataInfo['ysearchresponse']['resultset_web'];
$returnArray = array();
if (!empty($searchData)) {
foreach ($searchData as $data) {
$returnArray[] = array("url" => $data['url'], "date" => $data['date'], 'title' => strip_tags($data['title']), 'description' => strip_tags($data['abstract']));
}
}
return $returnArray;
}

4.测试结果
var_dump(getYahooSearch($CurlUtil, "百度"));

相关文章

  • PHP使用Session实现上传进度功能详解

    PHP使用Session实现上传进度功能详解

    这篇文章主要介绍了PHP使用Session实现上传进度功能,结合实例形式详细分析了session上传进度显示相关原理、实现方法及操作注意事项,需要的朋友可以参考下
    2019-08-08
  • 基于PHP开发中的安全防范知识详解

    基于PHP开发中的安全防范知识详解

    本篇文章是对PHP开发中的安全防范知识进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • php str_pad 函数用法简介

    php str_pad 函数用法简介

    php的str_pad()函数是把字符串填充为指定的长度,和str_repeat有类似之处,至于str_repeat的用法在此不作解释,有兴趣的可以查找手册.
    2009-07-07
  • php的字符串用法小结

    php的字符串用法小结

    php的字符串用法小结,刚开始接触php字符串的朋友可以参考下。
    2010-06-06
  • PHP避免SQL注入的常用方法

    PHP避免SQL注入的常用方法

    在开发php网站时,经常需要和数据库交互来存储和获取数据,然而,如果不对用户输入的数据进行处理,就可能会导致SQL注入攻击,SQL注入是一种常见的安全漏洞,攻击者可以通过恶意构造的输入数据来进入到数据库中,从而获取或篡改数据的行为
    2024-04-04
  • 如何获知PHP程序占用多少内存(memory_get_usage)

    如何获知PHP程序占用多少内存(memory_get_usage)

    想要知道编写的 PHP 脚本需要占用多少内存么?很简单,直接使用 PHP 查看当前分配给 PHP 脚本的内存的函数 memory_get_usage() 就可以了
    2012-09-09
  • PHP递归实现汉诺塔问题的方法示例

    PHP递归实现汉诺塔问题的方法示例

    这篇文章主要介绍了PHP递归实现汉诺塔问题的方法,简单描述了汉诺塔问题,并结合实例形式分析了php基于递归算法解决汉诺塔问题的相关操作技巧,需要的朋友可以参考下
    2017-11-11
  • 两千行代码的PHP学习笔记汇总

    两千行代码的PHP学习笔记汇总

    这篇文章主要介绍了两千行代码的PHP学习笔记汇总,由黑眼诗人整理汇总,包括了PHP学习中各类常见的技巧,非常具有实用价值,需要的朋友可以参考下
    2014-10-10
  • 完美解决dedecms中的[html][/html]和[code][/code]问题

    完美解决dedecms中的[html][/html]和[code][/code]问题

    完美解决dedecms中的[html][/html]和[code][/code]问题...
    2007-03-03
  • 使用PHP生成PDF方法详解

    使用PHP生成PDF方法详解

    这篇文章主要介绍了使用PHP生成PDF方法详解的相关资料,需要的朋友可以参考下
    2015-01-01

最新评论