Heim  >  Artikel  >  php教程  >  php Curl模拟登陆(特殊性)

php Curl模拟登陆(特殊性)

WBOY
WBOYOriginal
2016-06-13 10:48:311676Durchsuche

/**
 * @abstract Curl模拟登陆
 * @version Apache/2.2.17 (Win32) mod_ssl/2.2.17 OpenSSL/0.9.8o PHP/5.3.4 mod_perl/2.0.4 Perl/v5.10.1
   MySQL 客户端版本: mysqlnd 5.0.7-dev - 091210 - $Revision: 304625 $
 * time 2012-04-17
 * @author Veric 
 * @copyright 
 */ 
function getCookieUrl($host_url, $script_name, $method = 'GET', $data = '', $cookie_str = ''){ 
    $sock = fsockopen($host_url, 80, $errno, $errstr, 30); 
    if (!$sock) die("$errstr ($errno)\n"); 
    //将字符串转化为大写strToUpper 
    $method = strToUpper($method); 
    $method = ($method == 'GET') ? 'GET' : 'POST'; 
    if (substr($script_name, 0, 1) != '/') { 
        $script_name = '/' . $script_name; 
    } 
    //写入文件 
    fwrite($sock, $method . " " . $script_name . " HTTP/1.0\r\n"); 
    fwrite($sock, "Host: " . $host_url . "\r\n"); 
    if (!emptyempty($cookie_str)) { 
        fwrite($sock, "COOKIE: " . $cookie_str . "\r\n"); 
    } 
 
    fwrite($sock, "Content-type: application/x-www-form-urlencoded\r\n"); 
    if (!emptyempty($data)) { 
        fwrite($sock, "Content-length: " . strlen($data) . "\r\n"); 
    } 
    fwrite($sock, "Accept: */*\r\n"); 
    fwrite($sock, "\r\n"); 
    if (!emptyempty($data)) { 
        fwrite($sock, "$data\r\n"); 
    } 
    fwrite($sock, "\r\n"); 
    //测试文件指针是否到了文件结束的位置feof 
    //从文件指针中读取一行fgets 
 
    $body = ""; 
    while (!feof($sock)) { 
        $body .= fgets($sock, 4096); 
    } 
    fclose($sock); 
    return $body; 
 
 

 
 
$_SESSION[num]=$num=616343; 
 
$host_url = 'www.*******.com'; 
 
$host_page='space.php?uid='.$num.'&ticket='; 
$data =''; 
//获取$cookie 是用网络嗅探器抓取的 分析数据包 可自行下载 
$cookie='hyr_recommenduser=24; hyr_viewuids=476346__359336_154171_86276_300199_386764_380537_45907_297250; __utmc=169110968; hyr_auth=d4c7DUAeTbdnIkgqwKJLN78W7YDhUA%2FLr0y6Ssyo9ja0c5D0o7VYCPW8rYiSl6S%2F%2FLJJWYCsVElX6ImSxclFSb2fJdM; hyr_loginuser=kongbo; hyr_xy=0; __utma=169110968.1584085828.1331304385.1331304385.1331304385.1; __utmb=169110968.1.10.1331304385; __utmz=169110968.1331304385.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); hyr_sendmail=1; hyr_synfriend=1; _jkb_9202=1; _webim=%7B%22o%22%3Afalse%2C%22s%22%3A%22available%22%7D 
'; 
 
 
echo $content1= getCookieUrl($host_url, $host_page , 'POST', $data, $cookie); 
 
 
 
?> 


摘自 Vericlongmore的专栏

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn