PHP & Others

스누피로 로그인하기(웹호스팅 트래픽정보 긁어오기)

컨텐츠 정보

본문

출처 : http://dovetail.tistory.com/39


snoopy 클래스로 로그인하기

스누피 클래스에 대한 기본적인 사용법은 전에 다룬적이 있습니다. 기본적인 설치법과 사용법은 여기에서 확인할 수 있습니다. 스누피는 그 자체로 강력한 툴이지만 가끔 원하는 페이지를 크롤링하기 위해서는 먼저 로그인이 필요한 경우가 있죠. 이럴때 submit 함수를 사용합니다.

wink.ws 웹호스팅 트래픽정보 긁어오기

이번 예제에서는 wink.ws의 트래픽 사용정보를 가져와볼까요?

<?php
//스누피 클래스를 불러오고 초기화 해줍니다
include('Snoopy.php');
$snoopy = new Snoopy;

//wink.ws의 초기화면 uri입니다
//로그인 하지 않는다면 로그인 화면이 나오겠죠
$uri = 'http://cpanel.wink.ws/index#';

//로그인 정보를 저장할 배열 auth를 만듭니다
//배열의 key는 해당 폼에서 넘겨줄 name이 되겠습니다
$auth['email'] = '계정아이디';
$auth['password'] = '계정암호';

//스누피의 submit함수로 폼정보를 넘겨줍시다
$snoopy->submit($uri,$auth);

//로그인에 관련하여 쿠키를 사용하는 경우가 있으니 쿠키정보를 저장해둡니다
$snoopy->setcookies();

//이제 로그인 정보를 가지고 있으니 다시 uri로 접속해봅시다
$snoopy->fetch($uri);

//그리고 정규식을 이용해서 해당 엘리먼트를 뽑아옵니다
preg_match('/<table id="account-information">(.*?)<\/table>/is', $snoopy->results, $result);

//마지막으로 결과를 출력하구요
echo '<table id="info">'.$result[1].'</table>';
?>

효과는 뛰어났다!!

Status

Domain: xxxxxxxxx.wink.ws
IP Address: xxx.xxx.xxx.xxx
Username: uxxxxxxxxx
Password: ••••••••••
Disk Usage: xxx.xx / Unlimited MB
Bandwidth: xxx.xx / 100 MB
Home Root: /home/uxxxxxxxxx
Server Name: serverxx.wink.ws
Server IP: xxx.xxx.xxx.xxx
Server Load: xx.xx
MySQL Server Load: xx.xx
Apache Version: Apache/2.2.17
PHP Version: 5.4
MySQL Version: 5.1.58
Activated: 20xx-xx-xx xx:xx:xx
Status: Active
Hosting Plan: Free
Feature Set: Default

관련자료

댓글 0
등록된 댓글이 없습니다.
Today's proverb
‘할 수 없다’ 고 생각하는 것은 ‘하기 싫다’ 고 다짐하는 것과 같다. (스피노자)