zoukankan      html  css  js  c++  java
  • CURL的模拟登录和抓取页面

    <?php
    $curl = curl_init();// 初始化
    // 准备提交的表单数据之账号和密码。(这个是根据表单选项来的)
    $data = "_username=604989282@qq.com&_password=6481485" ;
    // 这个配置是为了防盗链,
    curl_setopt($curl,CURLOPT_REFERER,"http://www.ydma.cn/");
    // 基本配置
    curl_setopt($curl, CURLOPT_URL, 'http://www.ydma.cn/login/check');// 网址
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);// 不输出
    curl_setopt($curl, CURLOPT_POST, 1);// POST方式
    curl_setopt($curl, CURLOPT_POSTFIELDS,$data);// POST数据
    curl_setopt($curl, CURLOPT_HTTPHEADER, array(// 头部信息类型
      "content-type: application/x-www-form-urlencoded",
    ));
    
    // Cookie相关设置
    date_default_timezone_set("PRC");
    curl_setopt($curl,CURLOPT_COOKIESESSION,TRUE);// 开启cookie和session
    curl_setopt($curl,CURLOPT_COOKIEFILE,"cookiefile");// 存储名称
    curl_setopt($curl,CURLOPT_COOKIEJAR,"cookiefile");// 存储名称
    curl_setopt($curl,CURLOPT_COOKIE,session_name()."=".session_id());// 存储的是session_name()和session_id()
    
    curl_setopt($curl,CURLOPT_FOLLOWLOCATION,1);// 设置可以跳转
    curl_setopt($curl,CURLOPT_HEADER,0);// 不去打印头部信息
    
    curl_setopt($curl,CURLOPT_REFERER,"http://www.ydma.cn/");
    
    
    
    // 设置一下跳转页面
    // curl_setopt($curl,CURLOPT_URL,"http://www.ydma.cn/user/52897/learn");
    curl_setopt($curl,CURLOPT_URL,"http://www.ydma.cn/course/137/preview/lesson/3961");
      
    curl_setopt($curl,CURLOPT_POST,0);
    
    curl_setopt($curl,CURLOPT_HTTPHEADER,array("Content-type:text/html"));
    
    curl_setopt($curl,CURLOPT_REFERER,"http://www.ydma.cn/");
    
    $res = curl_exec($curl);
    
    curl_close($curl);
    
    // echo str_replace('src="/files', 'src="http://www.ydma.cn/files', $res);
    
    // echo substr_replace($res,"<base href='http://www.ydma.cn/'>",strpos("<head>",$res),0);
    echo str_replace("<head>","<head><base href='http://www.ydma.cn/'>",$res);
    // echo $res;

    页面来源:https://www.jianshu.com/p/682ddef25f55

    测试一个网站,因为需要验证码没获取到信息

  • 相关阅读:
    VHD进阶:差分VHD备份系统
    默认系统为UEFI启动的GPT分区的WIN7(8),如何安装VHD的UEFI WIN8(7)
    在WIN7/8下把XP装入VHD (上)
    USB鼠标线序
    组合与继承
    结构体内存对齐
    多媒体编码与格式
    网络病毒
    寄存器
    0
  • 原文地址:https://www.cnblogs.com/init-007/p/11041980.html
Copyright © 2011-2022 走看看