PHP中CURL应用与基于的修改Google实现
来源:互联网 发布:京北方兼职数据录入 编辑:程序博客网 时间:2024/04/28 02:35
能做什么
PHP中的curl库最基本的用途就是去简单有效地*抓取网页的内容*,然后利用抓取到的网页数据经程序的方式进行处理和分析,最终得到你所想要的数据。当然了,这是最基本的用法,还有其他复杂有趣的用途,这取决于你的curl_setopt()行数的设置
怎么用
首先,你的PHP中必须安装有curl的扩展插件,即phpinfo中有如下显示![这里写图片描述](http://img.blog.csdn.net/20150309200749680)然后就可以开始使用了,具体步骤: 1.用curl_init()初始化一个curl会话 2.通过curl_setopt()来设置需要的全部选项 3.用curl_exec()来执行会话 4.执行完后使用curl_close()关闭会话
ps:curl_setopt()是curl使用的关键,很多复杂的用法都是基于此
一个简单的例子
<?php//初始化一个curl对象$curl=curl_init("http://www.baidu.com");//将抓取的数据已文本的形式保存$fp=fopen("test.txt");//设置curl_setopt()参数curl_setopt($ch,CURLOPT_FILE,$fp);curl_setopt($ch,CURLOPT_HEADER,0);//执行curl_exec();curl_exec($ch);//关闭curl会话curl_exec($ch);curl_close($ch);fclose($fp);
以上例子来自官方文档
利用CURL实现抓取GOOGLE的host脚本
<?php//初始化curl对话$curl=curl_init();//设置curl_setoptcurl_setopt($curl, CURLOPT_URL, 'http://www.360kb.com/kb/2_122.html');curl_setopt($curl,CURLOPT_HEADER,0);curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);//执行curl$data=curl_exec($curl);//关闭curl资源curl_close($curl);//清楚HTML标签$data=strip_tags($data);//处理的读入数据$data=substr($data, strpos($data, '#google hosts'));$data=substr($data,0,strpos($data, '#google hosts 2015 end'));$data=str_replace(' ', ' ', $data);//写入host$host=file_get_contents("C:\\Windows\\System32\\drivers\\etc\\HOSTS");$host=substr($host,0,strpos($host, '#google hosts'));$host.=$data;$fh=fopen("C:\\Windows\\System32\\drivers\\etc\\HOSTS", 'w');fwrite(fopen("C:\\Windows\\System32\\drivers\\etc\\HOSTS", 'w'), $host);fclose($fh);
0 0
- PHP中CURL应用与基于的修改Google实现
- php 中CURL的应用
- PHP中 Curl的应用
- PHP中cURL的应用
- php中curl的应用
- php中curl、fsockopen的应用
- 基于curl的并行请求,实现php中的伪多线程
- 基于PHP的CURL入门
- 基于php curl的spider
- php curl的几段小应用
- PHP中cURL的功能,开启方法及应用案例
- 【PHP】基于PHP的cURL快速入门
- php之curl实现http与https请求的方法
- PHP之curl实现http与https请求的
- php之curl实现http与https请求的方法
- mac 在php工程中实现curl的https访问
- 基于PHP的curl的知识小结
- 基于PHP的cURL快速入门
- [Android开发学习] day05
- 第二节学院比赛----F题
- AngularJs:动态添加和删除选项卡
- Java高手真经_编程基础卷——读书笔记(7)——Eclipse命名小知识
- vc 中的文件格式
- PHP中CURL应用与基于的修改Google实现
- XMLHttpRequest二级
- NYOJ--60-题目-------------------------------谁获得了最高奖学金
- is和as初步
- 使用typedef语句定义数组类型
- Python 写入XML 文件
- Android SDK Manager 无法获取更新列表的解决办法
- Windows快捷键
- 抽象工厂模式(Abstract Factory)