[강좌] php용 강력하면서 쉬운 소켓(socket)클래스 , Snoopy

왜 그동안 삽질을 하고 있었던걸까? 
일반 호스팅에서는 외부에 있는 파일을 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 파일(프로그램파일들안에있음) 참조 

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


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

댓글을 달아주세요:: 네티켓은 기본, 스팸은 사절

  1. 2014.09.13 02:01 신고
    댓글 주소 수정/삭제 댓글
    안녕하세요~ 나수연 신입생 맥그리고 입니다~^^

    연구소장님의 주옥같은 글 잘 보고 있습니다


    이글을 읽고 궁금한게 생겨서요~ 아예 프로그래밍 초짜라서요 ㅜ

    위의 글에서 원하는 디렉토리에 스누피를 넣어두라고 하셨는데

    그 디렉토리가 제 사이트를 구성?하고 있는 디렉토리에 넣는건가요?

    아니면 그냥 제 컴퓨터 아무데나 넣으라는 건가요?


    그리고

    include "Snoopy.class.php";

    $snoopy = new Snoopy;

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

    print $snoopy->results;

    를 사용하라고 하셨는데,,, 제가 php 완전 쌩초보라,,.,

    저걸 어디다 갔다 써야 하는지 모르겟더라구요 ㅜ

    스누피 파일 열어서 저걸 쓰라는건지,,,

    어떤 파일에 저걸 갔다 붙여야 하는지 몰라서요;;

    소장님 알려주세요~~


BLOG main image
멈추지 않으면 얼마나 천천히 가는지는 문제가 되지 않느니라 by 달을파는아이

나의 인생 시계 만들기 >>

카테고리

분류 전체보기 (429)
달을파는아이 (283)
머니머신 (125)
파싱의 추억 (20)
현미촌 현미국수면 (1)
Statistics Graph