PHP的curl常用的5个例子

// 1,抓取无访问控制文件

     $ch= curl_init();
     curl_setopt($ch, CURLOPT_URL,"http://localhost/mytest/phpinfo.php");
     curl_setopt($ch, CURLOPT_HEADER, false);
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//如果把这行注释掉的话,就会直接输出
     $result=curl_exec($ch);
     curl_close($ch); 

// 2,使用代理进行抓取

     $ch= curl_init();
     curl_setopt($ch, CURLOPT_URL,"http://blog.51yip.com");
     curl_setopt($ch, CURLOPT_HEADER, false);
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
     curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE);
     curl_setopt($ch, CURLOPT_PROXY, 125.21.23.6:8080);
     //url_setopt($ch, CURLOPT_PROXYUSERPWD, ‘user:password‘);如果要密码的话,加上这个
     $result=curl_exec($ch);
     curl_close($ch); 

// 3,post数据后,抓取数据

     $ch= curl_init();
     /*在这里需要注意的是,要提交的数据不能是二维数组或者更高
     *例如array(‘name‘=>serialize(array(‘tank‘,‘zhang‘)),‘sex‘=>1,‘birth‘=>‘20101010‘)
     *例如array(‘name‘=>array(‘tank‘,‘zhang‘),‘sex‘=>1,‘birth‘=>‘20101010‘)这样会报错的*/
     $data=array(‘name‘=>‘test‘,‘sex‘=>1,‘birth‘=>‘20101010‘);
     curl_setopt($ch, CURLOPT_URL,‘http://localhost/mytest/curl/upload.php‘);
     curl_setopt($ch, CURLOPT_POST, 1);
     curl_setopt($ch, CURLOPT_POSTFIELDS,$data);
     curl_exec($ch); 

// 4.抓取一些有页面访问控制的页面

     $ch= curl_init();
     curl_setopt($ch, CURLOPT_URL,"http://club-china");
     /*CURLOPT_USERPWD主要用来破解页面访问控制的
     *例如平时我们所以htpasswd产生页面控制等。*/
     //curl_setopt($ch, CURLOPT_USERPWD, ‘231144:2091XTAjmd=‘);
     curl_setopt($ch, CURLOPT_HTTPGET, 1);
     curl_setopt($ch, CURLOPT_REFERER,"http://club-china");
     curl_setopt($ch, CURLOPT_HEADER, 0);
     $result=curl_exec($ch);
     curl_close($ch); 

// 5.模拟登录到sina

    functionchecklogin($user,$password)
     {
     if( emptyempty($user) || emptyempty($password) )
     {
     return0;
     }
     $ch= curl_init( );
     curl_setopt($ch, CURLOPT_REFERER,"http://mail.sina.com.cn/index.html");
     curl_setopt($ch, CURLOPT_HEADER, true );
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true );
     curl_setopt($ch, CURLOPT_USERAGENT, USERAGENT );
     curl_setopt($ch, CURLOPT_COOKIEJAR, COOKIEJAR );
     curl_setopt($ch, CURLOPT_TIMEOUT, TIMEOUT );
     curl_setopt($ch, CURLOPT_URL,"http://mail.sina.com.cn/cgi-bin/login.cgi");
     curl_setopt($ch, CURLOPT_POST, true );
     curl_setopt($ch, CURLOPT_POSTFIELDS,"&logintype=uid&u=".urlencode($user)."&psw=".$password);
     $contents= curl_exec($ch);
     curl_close($ch);
     if( !preg_match("/Location: (.*)\\/cgi\\/index\\.php\\?check_time=(.*)\n/",$contents,$matches) )
     {
     return0;
     }else{
     return1;
     }
     }  

     define("USERAGENT",$_SERVER[‘HTTP_USER_AGENT‘] );
     define("COOKIEJAR", tempnam("/tmp","cookie") );
     define("TIMEOUT", 500 );  

     echochecklogin("zhangying215","xtaj227"); 
时间: 2024-10-13 16:06:27

PHP的curl常用的5个例子的相关文章

php curl常用的5个例子

转载:http://www.jb100.net/html/content-22-821-1.html php curl常用的5个例子 我用php ,curl主要是抓取数据,当然我们可以用其他的方法来抓取,比如fsockopen,file_get_contents等.但是只能抓那些能直接访问的页面,如果要抓取有页面访问控制的页面,或者是登录以后的页面就比较困难了. 1,抓取无访问控制文件     <?php       $ch = curl_init();       curl_setopt($c

[转]php curl经典最常用的5个例子

转自: http://www.jb100.net/html/content-22-821-1.html php curl常用的5个例子 我用php ,curl主要是抓取数据,当然我们可以用其他的方法来抓取,比如fsockopen,file_get_contents等.但是只能抓那些能直接访问的页面,如果要抓取有页面访问控制的页面,或者是登录以后的页面就比较困难了. 1,抓取无访问控制文件 <?php $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,

Linux Shell 高级编程技巧4----几个常用的shell脚本例子

4.几个常用的shell脚本例子    4.0.在写脚本(同样适用在编程的时候),最好写好完善的注释    4.1.kill_processes.sh(一个杀死进程的脚本) #!/bin/bash current_PID=$$ ps -aux | grep "/usr/sbin/httpd" | grep -v "grep" | awk '{print $2}' > /tmp/${current_PID}.txt for pid in `cat /tmp/${

curl常用选项详解

curl常用选项详解 作者:尹正杰 又是下班的时间了,让我们一起来学习一下今天的Linux命令吧~我一半只把自己常用的参数列出来,其他的有但是我们几乎不常用,大家是 可以有兴趣的话可以自己参考哟~嘻嘻!在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令 行工具.它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为下载工具. 1.用curl抓取网页数据

Struts迭代器(iterator)遍历List常用的4种例子 - 冯世杰

[摘要]本文主要介绍及演示了Struts迭代器(iterator)遍历List常用的4种例子,基于MyEclipse开发环境,重点关注前后端代码的实现,给出后端java代码.前段struts标签代码,主要有如下4个例子: 1. 遍历List<String> 2. 遍历List<List<String>> 3. 遍历UserEntity 4. 遍历List<UserEntity> 例子的详细代码请参考附件1,给出两个4个例子的运行截图(如下图1):      

Linux中Grep常用的15个例子【转】

转自:https://www.aliyun.com/jiaocheng/1390860.html?spm=5176.100033.1.9.6a1e41e8Pdjynm 摘要:Grep命令主要用于从文件中查找指定的字符串.首先建一个demo_file:$catdemo_fileTHISLINEISTHE1STUPPERCASELINEINTHISFILE.thislineisthe1stlowercaselineinthisfile.ThisLineHasAllItsFirstCharacterO

Linux Curl常用命令使用

Curl是Linux下一个很强大的http命令行工具,其功能十分强大. 1)读取网页 $ curl linuxidc.com">http://www.linuxidc.com 2)保存网页 $ curl http://www.linuxidc.com > page.html $ curl -o page.html http://www.linuxidc.com 3)使用的proxy服务器及其端口:-x $ curl -x 123.45.67.89:1080 -o page.html 

curl常用操作

1.cURL介绍 cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP.FTP.TELNET等.最爽的是,PHP也支持 cURL 库.本文将介绍 cURL 的一些高级特性,以及在PHP中如何运用它. 2.基本结构 在学习更为复杂的功能之前,先来看一下在PHP中建立cURL请求的基本步骤: (1)初始化  curl_init() (2)设置变量  curl_setopt() .最为重要,一切玄妙均在此.有一长串cURL参数可供设置,它们能指定URL请求的各个细节.要一

php curl模拟post请求的例子

curl 在php中要模拟post请求数据提交我们会使用到curl函数,下面我来给大家举几个curl模拟post请求提交数据例子有需要的朋友可参考参考. 注意:curl函数在php中默认是不被支持的,如果需要使用curl函数我们需在改一改你的php.ini文件的设置,找到php_curl.dll去掉前面的";"就行了 例子1 <?php$uri = "http://tanteng.duapp.com/test.php";// 参数数组$data = array