'소켓'에 해당되는 글 2건

왜 그동안 삽질을 하고 있었던걸까? 
호스팅에서 사이트 긁어오기 (부제:로또 번호 긁어오기)
위에 글에서도 적었지만, 일반 호스팅에서는 외부에 있는 파일을 file,fopen으로 가져오는것을 막아 놨다. 그래서 꽁수로 python을 쓰면 된다고 흥분하며 말했다.

그.런.데. 당연히 안될거라 생각했던 fsocket은 된다. -_-;
난 왜 저걸 하고싶어서 파이썬 책을 두권이나 샀던걸까 ..

    /(
//\\
// )_.-"""-._,-""-.
\\ ^,'_\ /_\ )
`./ /O\| |/O\\ /
\ \_/| |\_/ \_/
\ .' _ `. /
.-. ( .:(_):. ) ,-.
( `._`._.-._,'_,' )
) (
( .-------------. ) hjw
`-' `-'


여튼 snoopy 라는 강력하면서 쉬운 php용 소켓 클래스를 소개한다.
마지막 버전은 http://snoopy.sourceforge.net/ 에서 구할수 있다.
하지만 .. 지금 현재 마지막 버전인 snoopy 1.2.3 는 구문 오류가 난다.

snoopy 1.2.3 버전 구문오류 해결법


일단 다운 받아서 원하는 디렉토리에 스누피를 넣어두시고 아래와 같이 사용하면 된다

include "Snoopy.class.php";
$snoopy = new Snoopy;
$snoopy->fetchtext("http://www.php.net/");
print $snoopy->results;
아 놀라워라.. 너무 쉽다.

이런것도 가능하다.
 $submit_url = "http://lnk.ispi.net/texis/script-xs/msearch/netsearch.html";
   
 $submit_vars["q"] = "amiga";
 $submit_vars["submit"] = "Search!";
 $submit_vars["searchhost"] = "Altavista";
       
 $snoopy->submit($submit_url,$submit_vars);
 print $snoopy->results;
저 주소로 쿼리를 보내서 결과값을 값는것이다.

이외에도 여러가지 기능들이 많다.
  • 웹사이트 내용을 긁어오기
  • html 태그는 쏙빼고 내용만 긁어오기
  • 링크만 골라서 가져오기
  • 프록시서버 지원
  • 기본적인 로그인인증 지원
  • 사용정보, 레퍼러, 쿠키등 설정 지원 (아.. 이거 위험한데..)
  • 쉽게 폼데이타를 보내고 결과값 받기 (이거도 위험한데..)
  • 프레임 지원
자세한건 README 파일 참조

스누피 README 파일


여튼.. 세상엔 없는게 없는거같다.
프로그래머로써 너무 편해지고 있다.
집안일이 힘들것같아서 세탁기며 청소기며 집안에 들여놔줬더니 더 게을러지는 주부같다고나 할까? ㅋㅋ

그럼.. 파이썬은 안녕~ 다음에 언제 또 필요해질지 모르겟지만 이제는 나에게 무용해졌구나.. 그동안 고생했어.

블로그 이미지

세이박스

세이박스는 세상의 모든 이야기를 담는 소통박스 입니다.

댓글을 달아 주세요

PHP 소켓 통신

웹프로그램 2008. 10. 19. 20:06
$host = 'ddiass.pe.kr';
$service_uri = '/test.html';
$vars ='?var=kkk';

# compose HTTP request header
$header = "Host: $host\r\n";
$header .= "User-Agent: PHP Script-x\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: ".strlen($vars)."\r\n";
$header .= "Connection: close\r\n\r\n";

$fp = pfsockopen($host, 80, $errno, $errstr);
if (!$fp) {
echo "$errstr ($errno)<br/>\n";
// echo $fp;
} else {
fputs($fp, "POST $service_uri HTTP/1.1\r\n");
fputs($fp, $header.$vars);
fwrite($fp, $out);
/*while (!feof($fp)) {
echo fgets($fp, 128);
}*/
fclose($fp);
}

'웹프로그램' 카테고리의 다른 글

PHP 파일읽기 - fopen()  (0) 2008.10.19
PHP Maximum execution time of 30 seconds exceeded  (0) 2008.10.19
PHP 문자수 자리 고정  (0) 2008.10.19
PHP 즐겨찾기등 바로 접속한 경우 구분하기  (0) 2008.10.19
PHP 소켓 통신  (0) 2008.10.19
PHP 기선언 변수  (0) 2008.10.19
PHP 접속자 IP 및 URL 확인하기  (0) 2008.10.18
PHP 글자 수 자르기  (0) 2008.10.18
PHP 자리수 맞추기  (0) 2008.10.18
블로그 이미지

세이박스

세이박스는 세상의 모든 이야기를 담는 소통박스 입니다.

Tag php, 소켓, 통신

댓글을 달아 주세요