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 相关文章推荐
discuz论坛 用户登录 后台程序代码
Nov 27 PHP
PHP编程风格规范分享
Jan 15 PHP
php实现保存submit内容之后禁止刷新
Mar 19 PHP
CodeIgniter错误mysql_connect(): No such file or directory解决方法
Sep 06 PHP
php文件操作相关类实例
Jun 18 PHP
详解PHP中的mb_detect_encoding函数使用方法
Aug 18 PHP
Discuz!X中SESSION机制实例详解
Sep 23 PHP
PHP使用内置函数生成图片的方法详解
May 09 PHP
详谈php静态方法及普通方法的区别
Oct 04 PHP
php获取linux命令结果的实例
Mar 13 PHP
phpstorm 正则匹配删除空行、注释行(替换注释行为空行)
Jan 21 PHP
PHP常用日期加减计算方法实例小结
Jul 31 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
yii操作session实例简介
2014/07/31 PHP
php实现每天自动变换随机问候语的方法
2015/05/12 PHP
round robin权重轮循算法php实现代码
2016/05/28 PHP
PHP使用HTML5 FormData对象提交表单操作示例
2019/07/02 PHP
js 实现复制到粘贴板的功能代码
2010/05/13 Javascript
jquery封装的对话框简单实现
2013/07/21 Javascript
JavaScript子类用Object.getPrototypeOf去调用父类方法解析
2013/12/05 Javascript
jquery 表格排序、实时搜索表格内容(附图)
2014/05/19 Javascript
nw.js实现类似微信的聊天软件
2015/03/16 Javascript
js验证上传图片的方法
2015/05/12 Javascript
JavaScript实现的经典文件树菜单效果
2015/09/08 Javascript
js表单验证实例讲解
2016/03/31 Javascript
js以及jquery实现手风琴效果
2020/04/17 Javascript
Bootstrap下拉菜单更改为悬停(hover)触发的方法
2017/05/24 Javascript
node.js基础知识汇总
2020/08/25 Javascript
Python类的定义、继承及类对象使用方法简明教程
2015/05/08 Python
Python中的rfind()方法使用详解
2015/05/19 Python
python实现分页效果
2017/10/25 Python
python并发编程多进程 互斥锁原理解析
2019/08/20 Python
python 如何去除字符串头尾的多余符号
2019/11/19 Python
Python实现CNN的多通道输入实例
2020/01/17 Python
Python如何使用内置库matplotlib绘制折线图
2020/02/24 Python
python 实现在无序数组中找到中位数方法
2020/03/03 Python
Python 读取WAV音频文件 画频谱的实例
2020/03/14 Python
Python析构函数__del__定义原理解析
2020/11/20 Python
诺心蛋糕官网:LE CAKE
2018/08/25 全球购物
SheIn沙特阿拉伯:女装在线
2020/03/23 全球购物
Fenty Beauty官网:蕾哈娜创立的美妆品牌
2021/01/07 全球购物
好家长事迹材料
2014/01/23 职场文书
低碳生活倡议书
2014/04/14 职场文书
物联网工程专业推荐信
2014/09/08 职场文书
常务副县长“三严三实”对照检查材料思想汇报
2014/10/05 职场文书
2014年少先队工作总结
2014/12/03 职场文书
2016年党员岗位承诺书
2016/03/24 职场文书
CocosCreator入门教程之网络通信
2021/04/16 Javascript
Go语言应该什么情况使用指针
2021/07/25 Golang