ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [강좌] php용 강력하면서 쉬운 소켓(socket)클래스 , Snoopy
    달을파는아이 2008. 4. 29. 09:31
    왜 그동안 삽질을 하고 있었던걸까? 
    일반 호스팅에서는 외부에 있는 파일을 file,fopen으로 가져오는것을 막아 놨다. 그래서 꽁수로 python을 쓰고 있었다.

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

        /(
    //\\
    // )_.-"""-._,-""-.
    \\ ^,'_\ /_\ )
    `./ /O\| |/O\\ /
    \ \_/| |\_/ \_/
    \ .' _ `. /
    .-. ( .:(_):. ) ,-.
    ( `._`._.-._,'_,' )
    ) (
    ( .-------------. ) hjw
    `-' `-'
    여튼 snoopy 라는 강력하면서 쉬운 php용 소켓 클래스를 소개한다.
    마지막 버전은 http://snoopy.sourceforge.net/ 에서 구할수 있다.
    하지만 .. 지금 현재 마지막 버전인 snoopy 1.2.3 는 구문 오류가 난다.
    snoopy 1.2.3 버전 구문오류 해결법
    722번째 줄에서 구문오류가 날것이다. 722번째 줄을 보면 아래와 같다
     

    "?,
    "?,
    "?,
    "?, 
    "?,  
    "?,  
    "?,

     
    이걸 아래와 같이 바꿔주면 된다.  

    "?",
    "?",
    "?",
    "?",
    "?",
    "?", 
    "?",


    아마도 어떤 특수 문자들 같은데 한글 윈도우에서는 보이지 않거나 깨져버린것같다.
    그래서 ? 로 바뀌어버리면서 구문오류가 난것같다. (이유는 정확하지 않음)
    일단 다운 받아서 원하는 디렉토리에 스누피를 넣어두시고 아래와 같이 사용하면 된다

    include "Snoopy.class.php";

    $snoopy = new Snoopy;

    $snoopy->fetchtext(http://www.php.net/);

    print $snoopy->results;

    아 놀라워라.. 너무 쉽다.

    이런것도 가능하다.

    $submit_url = "http://lnk.ispi.net/texis/scripts/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 파일(프로그램파일들안에있음) 참조 

    세상엔 없는게 없는거같다.


    프로그래머로써 너무 편해지고 있다.
    집안일이 힘들것같아서 세탁기며 청소기며 집안에 들여놔줬더니 더 게을러지는 주부같다고나 할까? ㅋㅋ
    그럼.. 파이썬은 안녕~ 다음에 언제 또 필요해질지 모르겟지만 이제는 나에게 무용해졌구나.. 그동안 고생했어.

    댓글

달을파는아이 @ nalab.kr