铁东博客

PHP之抓取方法(二)

抓取方法


一、PHP 函数

1、file() 把整个文件读入一个数组中

参数 描述
path 必需。规定要读取的文件。
include_path 可选。如果也想在 include_path 中搜寻文件的话,可以将该参数设为 "1"。
context 可选。规定文件句柄的环境。是一套可以修改流的行为的选项。若使用 null,则忽略。
//抓取的网址 $url = 'http://www.budejie.com'; //将读取内容存在数组中 $arr = file($url); print_r($arr); 

2、file_get_contents() 把整个文件读入一个字符串中

参数 描述
path 必需。规定要读取的文件。
include_path 可选。如果也想在 include_path 中搜寻文件的话,可以将该参数设为 "1"。
context 可选。规定文件句柄的环境。是一套可以修改流的行为的选项。若使用 null,则忽略。
start 可选。规定在文件中开始读取的位置。该参数是 PHP 5.1 新加的。
max_length 可选。规定读取的字节数。该参数是 PHP 5.1 新加的。
//抓取的网址 $url = 'http://mstatic.spriteapp.cn/xx/1/w3/css/index.css'; //将读取内容存在字符串中 $arr = file_get_contents($url); echo $arr; 

上面的数据获取,显然不是我们需要的,如果只是这样,不如我们自己打开网站,把数据复制下来
我们需要的是全自动,通过参数(类型、翻页)变换,抓取不同的数据


二、PHP libcurl 库

  • curl 就是 php 中的数据传输神器
  • libcurl 目前支持 http、https、ftp、gopher、telnet,等等...
  • curl 实现 Get 和 Post 请求的方法
常用函数 描述
curl_init() 初始化 cURL 会话
curl_setopt() 设置 cURL 传输选项
curl_exec() 执行 cURL 会话
curl_errno() 返回最后一次的错误代码
curl_error() 错误信息
curl_close() 关闭 cURL 会话
curl_setopt 参数 描述
ch 由 curl_init() 返回的 cURL 句柄
option 需要设置的 CURLOPT_XXX 选项。(curl 的关键部分,看下面示例)
value 设置值
$url = 'http://www.budejie.com'; $ch = curl_init(); // 创建一个新cURL资源 curl_setopt($ch, CURLOPT_URL, $url); // 设置URL $html = curl_exec($ch); // 运行cURL,请求URL,把结果复制给变量 if(curl_errno($ch)){ echo 'Errno'.curl_error($curl); //捕抓异常 } curl_close($ch); // 关闭cURL连接 print_r($html);

未经允许不得转载:铁东博客 » PHP之抓取方法(二)

评论,共有 0 条评论

  • 昵称 (必填)
  • 邮箱 (必填)
暂无评论数据,赶紧来评论吧