curl 模拟登入技术

生活百科 2023-01-26 08:58生活百科www.aizhengw.cn

curl 模拟登入技术

curl模拟登入用PHP开发模拟浏览器的套用,所使用的函式馆为CURL()函式馆。

,模拟登入也可以採用fsockopen函式,然后深入去学习http协定,写出标準的http头信息,过麻烦的地方就出在标準。如果对http协定标準认识不深,经常会因碰到少了一个空格或者少了一个换行符号而debug很久。

模拟浏览器登入套用开发,最关键的地方是突破登入验证。CURL不只支持http,还支持https。区别就在多了一层SSL加密传输。如果是要登入https网站,php记得要支持openssl。

基本介绍

  • 中文名curl 模拟登入
  • 程式语言PHP
  • 作 用模拟浏览器登录网站

套用範围

开发了一系列免费信箱的导出用户自己联繫人的功能,包括国内外知名邮 箱,163,sina,sohu,yahoo,hotmail,gmail,qq mail等。还开发了一些方便用户嵌入代码到各大部落格,个人门户的套用。比如嵌入flash代码到Qzone,网易的blog,百度的个人门户等。

套用实例

//用户名$login=‘username’;//密码$password=‘password’;//163的用户登入地址
$url=“https://reg.163.com/logins.jsp”;
//post要提交的数 $fields= “verifycookie=1&style=16&product=mail163&username=”.$login.”&password=”.$password.”&selType=jy&remUser=&secure=on&%B5%C7%C2%BC%D3%CA%CF%E4=%B5%C7%C2%BC%D3%CA%CF%E4″;
//用来存放cookie的档案$cookie_file=dirname(__FILE__).”/cookie.txt”;
//启动一个CURL会话$ch=curl_init();
//要访问的地址curl_setopt($ch,CURLOPT_URL,$url);
//对认证证书来源的检查,0表示阻止对证书的合法性的检查。curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,0);
//从证书中检查SSL加密算法是否存在curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,1);
//模拟用户使用的浏览器,在HTTP请求中包含一个”user-agent”头的字元串。curl_setopt($ch,CURLOPT_USERAGENT,“Mozilla/4.0(compatible;MSIE6.0;WindowsNT5.0)”);
//传送一个常规的POST请求,类型为application/x-www-form-urlencoded,就像表单提交的一样。curl_setopt($ch,CURLOPT_POST,1);
//要传送的所有数据,如果要传送一个档案,需要一个@开头的档案名称curl_setopt($ch,CURLOPT_POSTFIELDS,$fields);
//连线关闭以后,存放cookie信息的档案名称称curl_setopt($ch,CURLOPT_COOKIEJAR,$cookie_file);
//包含cookie信息的档案名称称,这个cookie档案可以是Netscape格式或者HTTP风格的header信息。curl_setopt($ch,CURLOPT_COOKIEFILE,$cookie_file);
//设定curl允许执行的最长秒数//curl_setopt($ch,CURLOPT_TIMEOUT,6);
//获取的信息以档案流的形式返回,而不是直接输出。curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
//执行操作$result=curl_exec($ch);if($result==NULL){echo“Error:“;echocurl_errno($ch).”–”.curl_error($ch).”“;}
//关闭CURL会话curl_close($ch);
上一篇:ERPII 下一篇:谭蔚

Copyright@2015-2025 www.aizhengw.cn 癌症网版板所有