<!-- 第十五章 通过cURL来做小偷程序 -->
<?php
//如何请求微信、地图等第三方API呢?
//这个时候就需要使用到——cURL。cURL中文翻译过来叫做基于URL的函数库。
//它的主要功能是:使用相关的函数模拟协议请求。
//例如:
//1.模拟表单向某个地址发送数据
//2.在无验证码的情况下模拟表单完成用户登录
//3.上传某个文件到远程服务器
//4.请求远程服务器提供的某些功能
//curl支持dict,file,ftp,ftps,gopher,http,https,imap,imaps,idap,idaps,
//pop3,pop3s,rtmp,rtsp,smtp,smtps,teInet和tftp协议。
//curl同时也支持HTTPS认证、HTTP的POST、HTT和PPUT、FTP上传(这个
//也能通过PHP的FTP扩展完成)、HTTP基于表单的上传、代理、cookies和用户名+密码的认证。
?>
<!-- curl使用方法和步骤 -->
<?php
//1.初始化curl资源
//2.参数设置请求的协议地址
//3.设置是否返回请求结果
//4.设置发送数据(无发送数据可不设置)
//5.其他的参数信息设置(按实际工作需要决定)
//6.执行或执行得到返回结果
//7.关闭curl资源
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.php.cn");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$output = curl_exec($ch);
curl_close($ch);
print_r($output);
?>
<!-- curl 自定义get方法抓取网页 -->
<?php
$content = get('http://www.xmtnews.com/events');
preg_match('/<section class="ov">(.*?)<div class="hr-10"><\/div>/mis', $content,$match);
$area = $match[1];
preg_match_all('/<h3><a href="(.*?)" title=".*?"
class="headers" target="_blank">(.*?)<\/a><\/h3/>', $area, $find);
var_dump($find);
function get($find){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
$output = curl_exec($ch);
curl_close($ch);
}
?>
<!-- curl使用post发送数据 -->
<?php
function post($url, $data){
//初始化init方法
$ch = curl_init();
//指定URL
curl_setopt($ch, CURLOPT_URL, $url);
//设置请求后返回结果
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//声明使用POST方式来发送
curl_setopt($ch, CURLOPT_POST, 1);
//发送什么数据呢
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
//忽略证书
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
//忽略header头信息
curl_setopt($ch, CURLOPT_HEADER, 0);
//设置超时时间
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
//发送请求
$output = curl_exec($ch);
//关闭curl
curl_close($ch);
//返回数据
return $output;
}
?>
php基础九(通过cURL来做小偷程序)
最新推荐文章于 2022-06-21 16:55:54 发布