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 相关文章推荐
用Socket发送电子邮件
Oct 09 PHP
杏林同学录(七)
Oct 09 PHP
使用php显示搜索引擎来的关键词
Feb 13 PHP
ThinkPHP验证码使用简明教程
Mar 05 PHP
PHP安装memcached扩展笔记
May 28 PHP
详谈PHP编码转换问题
Jul 28 PHP
PHP+HTML+JavaScript+Css实现简单爬虫开发
Mar 28 PHP
php实现图片缩略图的方法
Mar 29 PHP
PHP+MySQL高并发加锁事务处理问题解决方法
Apr 30 PHP
PHP设计模式之观察者模式定义与用法示例
Aug 04 PHP
微信推送功能实现方式图文详解
Jul 12 PHP
PHP实现chrome表单请求数据转换为接口使用的json数据
Mar 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后端银联支付及退款实例代码
2017/06/23 PHP
php中字符串和整数比较的操作方法
2019/06/06 PHP
来自国外的14个图片放大编辑的jQuery插件整理
2010/10/20 Javascript
Dom在ajax技术中的作用说明
2010/10/25 Javascript
js实现网站首页图片滚动显示
2013/02/04 Javascript
Javascript实现滑块滑动改变值的实现代码
2013/04/12 Javascript
js导出table数据到excel即导出为EXCEL文档的方法
2013/10/10 Javascript
jquery选择checked在ie8普通模式下的问题
2014/02/12 Javascript
5个可以帮你理解JavaScript核心闭包和作用域的小例子
2014/10/08 Javascript
jQuery 1.9.1源码分析系列(十五)之动画处理
2015/12/03 Javascript
JQuery标签页效果实例详解
2015/12/24 Javascript
谈谈JavaScript数组常用方法总结
2017/01/24 Javascript
nodejs 图解express+supervisor+ejs的用法(推荐)
2017/09/08 NodeJs
详解从Vue.js源码看异步更新DOM策略及nextTick
2017/10/11 Javascript
微信小程序实现的涂鸦功能示例【附源码下载】
2018/01/12 Javascript
webpack4 从零学习常用配置(小结)
2019/05/28 Javascript
JavaScript遍历数组和对象的元素简单操作示例
2019/07/09 Javascript
Vue 实现简易多行滚动&quot;弹幕&quot;效果
2020/01/02 Javascript
介绍Python中几个常用的类方法
2015/04/08 Python
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
python flask 如何修改默认端口号的方法步骤
2019/07/12 Python
微信小程序之html5 canvas绘图并保存到系统相册
2019/06/20 HTML / CSS
俄罗斯品牌服装和鞋子的在线商店:KUPIVIP
2019/10/27 全球购物
大学生求职工作的自我评价
2014/02/13 职场文书
喜之郎果冻广告词
2014/03/20 职场文书
说明书怎么写
2014/05/06 职场文书
计算机软件专业求职信
2014/06/10 职场文书
学院党的群众路线教育实践活动第一阶段情况汇报
2014/10/25 职场文书
汇报材料怎么写
2014/12/30 职场文书
展览会邀请函
2015/02/02 职场文书
2016会计专业自荐信范文
2016/01/28 职场文书
opencv检测动态物体的实现
2021/07/21 Python
Oracle安装TNS_ADMIN环境变量设置参考
2021/11/01 Oracle
Python matplotlib多个子图绘制整合
2022/04/13 Python
python基础之//、/与%的区别详解
2022/06/10 Python
Mybatis-plus配置分页插件返回统一结果集
2022/06/21 Java/Android