PHP使用curl制作简易百度搜索


Posted in PHP onNovember 03, 2016

这几天研究了一下php中的curl类库,做了一个简单的百度搜索,先上代码

<div style="width:200px;height:100px;">
 <div>百度搜索</div>
 <form action="" method="get">
  <input type="text" name="key">
  <input type="submit" value="搜索">
 </form>
</div>
<?php
$k = '';
$k = !empty($_GET['key'])?$_GET['key']:'';
session_start();
$_SESSION['key'] = $k;

$curl = curl_init(); 
// 设置你需要抓取的URL 

for($i = 0;$i<2;$i++){
curl_setopt($curl, CURLOPT_URL, "http://www.baidu.com/s?wd={$_SESSION['key']}&pn={$i}"); 
// 设置header 
curl_setopt($curl, CURLOPT_HEADER, 1); 
// 设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
// 运行cURL,请求网页 
$data = curl_exec($curl); 

$pre = '/<h3 class="t"><a.*?href = "(.*?)".*?target="_blank".*?>(.*?)<\/a><\/h3>/s';
preg_match_all($pre,$data,$match);

foreach ($match[1] as $k => $v) {
?> 
<div style="font-size:20px;color:red;">
 <a href="<?php echo $v;?>" target="_blank"><?php echo strip_tags($match[2][$k]);?></a>
</div>
<?php
}
}

curl_close($curl);


?>

经过分析百度的搜索时的url发现有一个规律

https://www.baidu.com/s?wd=搜索的关键字

但是我发现使用https协议后不能够获得百度上的数据于是改为http://www.baidu.com?wd=搜索的关键字就可以啦!!

效果图如下:

PHP使用curl制作简易百度搜索

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
一个php作的文本留言本的例子(一)
Oct 09 PHP
NOD32 v2.70.32 简体中文封装版 提供下载了
Feb 27 PHP
php 设计模式之 单例模式
Dec 19 PHP
Warning: session_destroy() : Trying to destroy uninitialized sessionq错误
Jun 16 PHP
PHP调用Webservice实例代码
Jul 29 PHP
php addslashes 利用递归实现使用反斜线引用字符串
Aug 05 PHP
destoon实现首页显示供应、企业、资讯条数的方法
Jul 15 PHP
php使用CURL伪造IP和来源实例详解
Jan 15 PHP
PHP统计当前在线用户数实例讲解
Oct 21 PHP
PHP中strncmp()函数比较两个字符串前2个字符是否相等的方法
Jan 07 PHP
PHP简单检测网址是否能够正常打开的方法
Sep 04 PHP
php常用日期时间函数实例小结
Jul 04 PHP
php 防止表单重复提交两种实现方法
Nov 03 #PHP
PHP HTTP 认证实例详解
Nov 03 #PHP
php将print_r处理后的数据还原为原始数组的解决方法
Nov 02 #PHP
php实现HTML实体编号与非ASCII字符串相互转换类实例
Nov 02 #PHP
php 使用redis锁限制并发访问类示例
Nov 02 #PHP
Android AsyncTack 异步任务实例详解
Nov 02 #PHP
php array_pop 删除数组最后一个元素实例
Nov 02 #PHP
You might like
php笔记之常用文件操作
2010/10/12 PHP
深入Memcache的Session数据的多服务器共享详解
2013/06/13 PHP
数组与类使用PHP的可变变量名需要的注意的问题
2013/06/20 PHP
发一个自己用JS写的实用看图工具实现代码
2008/07/26 Javascript
关于JavaScript定义类和对象的几种方式
2010/11/09 Javascript
深入理解JavaScript系列(9) 根本没有“JSON对象”这回事!
2012/01/15 Javascript
javascript控制swfObject应用介绍
2012/11/29 Javascript
Javascript查询DBpedia小应用实例学习
2013/03/07 Javascript
jquery 日期控件datepicker属性详细解析
2013/11/08 Javascript
jquery slibings选取同级其他元素的实现代码
2013/11/15 Javascript
我的NodeJs学习小结(一)
2014/07/06 NodeJs
基于jQuery实现最基本的淡入淡出效果实例
2015/02/02 Javascript
深入理解javascript函数参数与闭包
2016/12/12 Javascript
详解JS中的快速排序与冒泡
2017/01/10 Javascript
vue如何进行动画的封装
2018/09/26 Javascript
Vue项目pdf(base64)转图片遇到的问题及解决方法
2018/10/19 Javascript
JS+HTML5 canvas绘制验证码示例
2018/12/05 Javascript
vue中axios实现数据交互与跨域问题
2019/05/12 Javascript
JS中的算法与数据结构之常见排序(Sort)算法详解
2019/08/16 Javascript
VSCode搭建Vue项目的方法
2020/04/30 Javascript
Node.js 深度调试方法解析
2020/07/28 Javascript
请求时token过期自动刷新token操作
2020/09/11 Javascript
[02:44]2014DOTA2 国际邀请赛中国区预选赛 大神红毯秀
2014/05/25 DOTA
django用户登录和注销的实现方法
2018/07/16 Python
python 将大文件切分为多个小文件的实例
2019/01/14 Python
python sorted方法和列表使用解析
2019/11/18 Python
Python socket连接中的粘包、精确传输问题实例分析
2020/03/24 Python
英国曼彻斯特宠物用品品牌:Bunty Pet Products
2019/07/27 全球购物
机关党员2014全国两会学习心得体会
2014/03/10 职场文书
美术指导求职信
2014/03/17 职场文书
应聘教师自荐信
2015/03/26 职场文书
社区低保工作总结2015
2015/07/23 职场文书
《浅水洼里的小鱼》教学反思
2016/02/16 职场文书
python 逐步回归算法
2021/04/06 Python
Python time库的时间时钟处理
2021/05/02 Python
SpringBoot2零基础到精通之异常处理与web原生组件注入
2022/03/22 Java/Android