>php教程 >php手册 >PHP 컬을 사용하여 오픈소스 중국에 로그인

PHP 컬을 사용하여 오픈소스 중국에 로그인

WBOY
WBOY원래의
2016-08-04 08:54:551238검색

phpcurl을 사용하여 오픈 소스 중국에 로그인하세요. 계정 번호와 비밀번호를 비밀번호 없이 유효한 계정으로 바꾸는 것을 기억하시나요? );$useragent = $ _SERVER['HTTP_USER_AGENT'];$postdata = http_build_query(

Open Source China에 로그인하려면 php 컬을 사용하세요. 계정 번호와 비밀번호를 유효한 계정 번호와 비밀번호로 바꿔야 합니다. 1ac5ad9952dc79489dc410dee5818282
<?php
/**
 * php curl登陆开源中国
 * @author yearnfar
 */
define(SELF_PATH, realpath(dirname(__FILE__)));

$useragent = $_SERVER['HTTP_USER_AGENT'];

$postdata = http_build_query(array(
	'email' => '账号',
	'pwd'=> sha1('密码') ,
	'save_login'=>1 ));
//exit($postdata);
//cookies保存路径
is_dir(SELF_PATH.'/cookies') or mkdir(SELF_PATH.'/cookies');
$cookiejar = tempnam(SELF_PATH."/cookies/", "cookie");

$url = array(
	0=>	'https://www.oschina.net/action/user/hash_login',
	1=>	'http://my.oschina.net/yearnfar',
	2=>	'https://www.oschina.net/home/login',
	);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url[0]);
curl_setopt($ch, CURLOPT_TIMEOUT , 10);	//curl执行最长时间(秒)
curl_setopt($ch, CURLOPT_HEADER, 0);

curl_setopt($ch, CURLOPT_SSLVERSION,3); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//curl_setopt($ch, CURLOPT_PORT , 80);		//连接端口
curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
curl_setopt($ch, CURLOPT_POST, true);	//提交的数据 
curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata);	//提交的数据
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiejar);	//保存cookie信息 

$data = curl_exec($ch);
curl_close($ch);
//print_r($data);
//exit();

$ch = curl_init($url[1]);
curl_setopt($ch, CURLOPT_HEADER, 0);
//curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //https
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiejar);

$contents = curl_exec($ch);
curl_close($ch);

print_r($contents);  
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.