snoopy
-
[사이트긁어오기 강좌#1] php와 snoopy로 로그인 처리파싱의 추억 2012. 2. 21. 07:00
사이트 긁어오기를 하다보면, 로그인을 해야만 가능한 사이트들을 만나게 된다. 사이트파싱 에서 로그인처리는 까다로운 녀석인데, snoopy에는 로그인을 처리하는 기능이 있다. 로그인에 변수들을 던져주면 자동으로 로그인이 된다. 로그인 처리를 해보면, 대부분 스누피를 이용해서 파싱이 가능하다. 물론, 좀 복잡한 방법으로 해야만 하는 경우도 있다. 복잡한 방법은 놔두고, 간단히 처리하는 방법을 알아본다. 테스트로 사용할 사이트중에 어디가 좋을까나.. 제휴사이트중 “링크프라이스” 라는 곳으로 해보자. 보통의 사이트들은 아래 같은 방법이면 70%는 로그인이 가능하다. 일단, 사이트의 로그인처리를 살펴봐야한다. 알아야 할 항목은 크게 3가지다. 1. 로그인 처리를 하는 url 2. 아이디를 받아내는 변수 3. 비밀..
-
PHP 스누피로 사이트 긁어오기가 되지 않는 사이트를 긁어오는 3가지 방법파싱의 추억 2010. 4. 19. 00:31
사이트를 긁어오기를 하다보면 fsockopen(): unable to connect to 라는 에러가 나면서 사이트 긁어오기가 되지 않는 경우가 종종있다. 특히 외국 사이트중에 그런 곳이 많다. 사이트를 방문하지 않고 내용만 쏙 빼가는게 탐탁치 않아서 막아 놓은경우도 있고, 국가적인 차원에서 차단을 시킨경우도 있다. 예를 들어 , 일본 최대 AV 회사중에 하나인 DMM은 한국에서 들어오는 방문자를 차단시켜놓았다. 실제로 AV를 구매하지도 않으면서 트래픽은 엄청나게 잡아 먹기 때문이다. 또 다른예로 , 미국 국가 기관들중에는 미국에서 접속하지 않으면 페이지에 접근할수도 없는곳들이 있다. 재미있는건 웹브라우져를 열어서 보면 열리는데, 스누피로 긁어올려고 하면 안된다는 점이다. 현재 내가 발견한 사이트 긁어오..
-
[php+snoopy] 나눔로또에서 로또번호 긁어오기파싱의 추억 2009. 4. 30. 20:06
php에서 특정 사이트를 긁어올때는 file 함수나 fopen 함수를 쓰면 된다. 왠만한 사이트는 file 함수로 접근을 할경우 가져가지 못하게 막아놓는다. 그런 사이트들를 긁어오려면 "snoopy" 라는 php class 를 이용한다. snoopy는 php에서 소켓을 쉽게 쓸수 있는 강력한 클래스이다. 단순히 사이트를 긁어오는 기능과 더불어 html 태그를 쏙 빼고 텍스트만 긁어올수도 있으며, form 으로 바로 submit 해서 결과값을 받을수 있는 유용한 클래스이다. /( //\\ // )_.-"""-._,-""-. \\ ^,'_\ /_\ ) `./ /O\| |/O\\ / \ \_/| |\_/ \_/ \ .' _ `. / .-. ( .:(_):. ) ,-. ( `._`._.-._,'_,' ) ) (..
-
[PHP+snoopy] 옥션리스트 긁어오기와서 RSS 만들기파싱의 추억 2008. 9. 28. 10:30
본 블로그에는 사이트의 내용을 긁어오는것에 대한 간단 강좌 시리즈가 있다. [강좌] php용 강력하면서 쉬운 소켓(socket)클래스 , Snoopy [php+snoopy] 나눔로또에서 로또번호 긁어오기 그 글을 보고 이메일로 보내온 질문에 대한 답을 빙자한 간단 강좌다. 아래는 메일 내용이다. ---------------------------------------------------------------------------- 저는 PHP파싱에 관심이 굉장히 많은사람인데요. 님의 블로그를 보고 메일을 드립니다. 초보입장에서 PHP스쿨에서 스누피를 알게되고 사용강좌를 찾다가 님의 블로그에 간단한 예시들을 보고 궁금한점이 더 많아져서;; 도저히 못참겠기에 메일 제목처럼 특정 페이지를 파싱해서 DB에 저장..
-
다음 메인에서 뉴스부분만 긁어오기(php+snoopy)달을파는아이 2008. 5. 2. 09:30
로또번호를 긁어오는것에 이어 이번엔 다음 메인 뉴스를 긁어보자. [php+snoopy] 나눔로또에서 로또번호 긁어오기 [강좌] php용 강력하면서 쉬운 소켓(socket)클래스 , Snoopy 다음은 file,fopen 함수를 사용하면 긁어올수가 없다. 접근을 못하게 막아놓은것같다. 하지만 우리에겐 강력한 snoopy가 있다. 스누피야 달려가서 다음물어오렴~ 기본적인 방법은 로또번호를 긁어올때랑 똑같다. 다른점은 뉴스부분만 떼내는 작업이다. 먼저 아래와같이 다음의 메인 페이지를 가져온다. include '_lib/class.snoopy.php'; $snoopy=new snoopy; $snoopy->fetch("http://www.daum.net"); 다음의 메인페이지에서 소스보기를 해서 , 뉴스가 시작하..
-
[강좌] php용 강력하면서 쉬운 소켓(socket)클래스 , Snoopy달을파는아이 2008. 4. 29. 09:31
왜 그동안 삽질을 하고 있었던걸까? 일반 호스팅에서는 외부에 있는 파일을 file,fopen으로 가져오는것을 막아 놨다. 그래서 꽁수로 python을 쓰고 있었다. 그.런.데. 당연히 안될거라 생각했던 fsocket은 된다. -_-; 난 왜 저걸 하고싶어서 파이썬 책을 두권이나 샀던걸까 .. /( //\\ // )_.-"""-._,-""-. \\ ^,'_\ /_\ ) `./ /O\| |/O\\ / \ \_/| |\_/ \_/ \ .' _ `. / .-. ( .:(_):. ) ,-. ( `._`._.-._,'_,' ) ) ( ( .-------------. ) hjw `-' `-' 여튼 snoopy 라는 강력하면서 쉬운 php용 소켓 클래스를 소개한다. 마지막 버전은 http://snoopy.sourcef..