크롤러

Crawling

[크롤링/15] 크롤러 서버에서 운용하기(Windows/Ubuntu)

주기적으로 크롤러를 자동 실행하여 최신 데이터를 수집해야 하는 경우 다양한 옵션을 생각해볼 수 있다. 클라이언트에서 크롤러를 스케줄러에 등록해서 운용할 수도 있지만, 굳이 서버라고 명시한 것은 여러 가지 이유가 있다. 크롤러가 스케줄에 따라 동작하려면, 스케줄된 시간에 머신이 동작하고 있어야 하며 크롤러가 동작하는 도중에 머신이 종료되면 안 된다.기본적으로 서버는 24시간 돌아간다. 따라서 스케줄 된 시간의 머신 동작 여부나 동작 종료 여부를 걱정하지 않아도 된다. 예전에 회사에서 크롤러를 관리할 때, 서버용으로 사용하는 컴퓨터가 있었는데 회사 전기가 나가서 크롤러가 동작하지 않은 적이 있다. 이런 경우를 생각하면 클라우드 서비스도 좋은 선택지인 것 같다. 1. 윈도우즈 서버에서 크롤러 운용하기 작업 스..

Crawling

[크롤링/09]크롤러 분류

1. 상태 유무 상태를 가지는 크롤러 - Stateful 상태가 없는 크롤러 - Stateless 상태를 가지는 크롤러의 경우에는 쿠키 송수신 기능이 필요하다(Requests Session, Referer). 2. 자바스크립트 실행 유무 자바스크립트를 실행하는 경우에는 Selenium을 사용하거나, 패턴을 파악해 흉내 내는 방법이 있다. 브라우저 조작 도구인 셀레니움은 일반적인 크롤러에비해 실행 시간이 길고 메모리 소비량이 많다. 따라서 어쩔 수 없는 경우에는 이를 사용해야겠지만, 최대한 피하는 편이 좋다. 헤드리스 브라우저는 일반 웹 브라우저에 비해 메모리 소비량이 적기때문에, 셀레니움을 사용할 때는 헤드리스 브라우저를 사용하는 것이 좋다. 대표적인 헤드리스 브라우저로는 PhantomJS가 있다. 3...

Crawling

[크롤링/08]퍼머링크와 데이터베이스 설계

퍼머링크(Permalink = Permanent + Link)란? 하나의 콘텐츠에 대응되며, 시간이 지나도 대응되는 콘텐츠가 변하지 않는 URL 인터넷에서 특정 페이지에 영구적으로 할당된 URL 주소를 뜻한다. 이 주소는 한 번 정해지면 영원하다는 의미에서, 영구적인(permanent) 주소라는 뜻의 permanent link를 줄여 만든 말이다. - Wiki(https://ko.wikipedia.org/wiki/퍼머링크) 퍼머링크의 장점 검색 엔진의 크롤러가 콘텐츠를 인식하기 쉬움 검색 엔진 최적화가 잘 이루어짐 크롤러의 재실행 크롤러는 보통 반복적인 작업을 위해 만들어지고, 일회성 사용에서 그치는 경우가 적다. 따라서 크롤링한 데이터를 데이터베이스에 저장할 때는 유니크 키를 생각해야한다. 단순하게 저..

박한결
'크롤러' 태그의 글 목록