-
-
header("Content-type:text/html;charset=utf-8"); - $cookie_file = dirname(__FILE__)."/cookie_".md5(basename(__FILE__)).".txt"; // 쿠키 파일 저장 경로 및 파일명 설정
- function vlogin($url,$data) { // 쿠키 기능을 얻기 위해 로그인 시뮬레이션
- $curl =curl_init(); // CURL 세션 시작
- curl_setopt($curl, CURLOPT_URL, $url) //접속할 주소
- curl_setopt ($curl , CURLOPT_SSL_VERIFYPEER, 0); // 인증서 원본 확인
- 컬_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1) // 인증서에서 SSL 암호화 알고리즘이 존재하는지 확인
- 컬_setopt($curl , CURLOPT_USERAGENT, $_SERVER ['HTTP_USER_AGENT']); // 사용자가 사용하는 브라우저를 시뮬레이션합니다.
- curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1) //자동 점프 사용
- curl_setopt($curl, CURLOPT_AUTOREFERER, 1 ); // 자동으로 추천인 설정
- cur_setopt($curl, CURLOPT_POST, 1); // 일반 게시물 요청 보내기
- 컬_setopt($curl, CURLOPT_POSTFIELDS, $data) // 제출된 데이터 패키지
- curl_setopt($curl, CURLOPT_COOKIEJAR, $GLOBALS['cookie_file']); //쿠키 정보를 저장할 파일 이름
- curl_setopt($curl, CURLOPT_COOKIEFILE, $GLOBALS['cookie_file']) //저장된 쿠키 정보를 읽습니다. 위
- 컬_setopt($curl, CURLOPT_TIMEOUT, 30); // 무한 루프를 방지하기 위해 시간 초과 제한을 설정합니다.
- 컬_setopt($curl, CURLOPT_HEADER, 0) // 반환된 헤더 영역의 내용을 표시합니다.
- 컬_setopt ($curl, CURLOPT_RETURNTRANSFER, 1); // 얻은 정보를 파일 스트림 형태로 반환합니다.
- $tmpInfo = cur_exec($curl) // 작업을 실행합니다.
- if (curl_errno($curl) ) {
- echo 'Errno'.curl_error($curl);
- }
- cur_close($curl); // CURL 세션 닫기
- return $tmpInfo; 🎜>
- function vget( $url){ // 콘텐츠 획득 기능 시뮬레이션
- $curl =curl_init(); // CURL 세션 시작
- curl_setopt($curl, CURLOPT_URL, $url); / 접속할 주소
- cur_setopt ($curl, CURLOPT_SSL_VERIFYPEER, 0); // 인증서 원본 확인
- cur_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1) // SSL 암호화 알고리즘 존재 여부 확인; 인증서에서
- 컬_setopt($curl, CURLOPT_USERAGENT , $_SERVER['HTTP_USER_AGENT']) // 사용자가 사용하는 브라우저를 시뮬레이션합니다.
- 컬_setopt($curl, CURLOPT_FOLLOWLOCATION, 1) // 자동 점프 사용
- 컬_setopt($curl, CURLOPT_AUTOREFERER, 1); // 자동으로 리퍼러 설정
- 컬_setopt($curl, CURLOPT_HTTPGET, 1) // 일반 게시물 요청 보내기
- 컬_setopt($curl, CURLOPT_COOKIEFILE, $GLOBALS[ 'cookie_file']); // 위 저장된 쿠키 정보 읽기
- curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 무한 루프를 방지하기 위해 시간 초과 제한 설정
- 컬_setopt($curl, CURLOPT_HEADER, 0); / 반환된 Header 영역 내용 표시
- cur_setopt($curl, CURLOPT_RETURNTRANSFER, 1) // 얻은 정보를 파일 스트림 형태로 반환합니다.
- $tmpInfo = cur_exec($curl); 연산
- if (curl_errno($curl)) {
- echo 'Errno'.curl_error($curl);
- }
- 컬_close($curl); // CURL 세션 종료
- return $ tmpInfo; // 데이터 반환
- }
-
- function vpost($url,$data){ // 데이터 제출 시뮬레이션
- $curl = curl_init() // CURL 세션 시작
- curl_setopt($curl, CURLOPT_URL, $url); //접속할 주소
- curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0) //인증서 원본 확인
- curl_setopt($curl, CURLOPT_SSL_VERIFYHOST , 1); // 인증서에서 SSL 암호화 알고리즘이 존재하는지 확인
- 컬_setopt($curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']) // 사용자가 사용하는 브라우저 시뮬레이션
- 컬_setopt($ 컬, CURLOPT_FOLLOWLOCATION, 1); // 자동 점프 사용
- 컬_setopt( $curl, CURLOPT_AUTOREFERER, 1); // 자동으로 참조자 설정
- 컬_setopt($curl, CURLOPT_POST, 1); <… cur_setopt($curl, CURLOPT_TIMEOUT, 30); // 시간 초과 제한을 설정하면 무한 루프가 방지됩니다.
- cur_setopt($curl, CURLOPT_HEADER, 0) // 반환된 헤더 영역 내용 표시
- curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1 ); // 얻은 정보는 파일 스트림 형태로 반환됩니다.
- $tmpInfo = cur_exec($curl); // 작업 수행
- if (curl_errno($curl)) {
- echo 'Errno '.curl_error($curl);
- }
- curl_close ($curl); // 키 CURL 세션
- return $tmpInfo; // 데이터 반환
- }
- < ;p>function delcookie($cookie_file){ // 쿠키 삭제 함수
- @unlink($cookie_file) // 삭제 수행
- }
function readcookies( $file)
- {
- $result = null;
-
- $fp = fopen( $file, "r" );
- if($fp)
- {
- while ( !feof( $fp ) )
- {
- $buffer = fgets( $fp, 4096 );
- $result = $buffer;
- //$tmp = @split( "/t", $buffer );
- //$result[@trim( $tmp[5] )] = @trim( $tmp[6] );
- }
-
- fclose($fp);
- }
-
- return $result;
- }
- $url = 'http://w.mail.qq. com/cgi-bin/loginpage?f=xhtml';
- if(!file_exists($cookie_file)) { // 쿠키가 있는지 확인
- $str = vget($url); // 제출물 가져오기 background
- preg_match("/action="([^"]*?)"/isU",$str,$hash); // 로그인 랜덤값 추출
- print_r($hash[1]);
- vlogin($hash[1],'&f=xhtml&uin=your qq number&aliastype=@qq.com&pwd=qq number 비밀번호&mss=1') // 쿠키를 얻으려면 로그인하세요
}
- else
- {
- vget("http://w30.mail.qq.com/cgi-bin/today?sid=ggQq2H-cUHdDdHs0z6rT6vN8,4,z-yTNgDwU&first=1");
- echo '쿠키 생성됨';>
-
-
코드 복사
>>> PHP에 대한 추가 정보 시뮬레이션된 로그인에 대한 기사는 주제 링크를 참조하십시오: php 시뮬레이션된 로그인 php 컬 시뮬레이션된 로그인 튜토리얼
|