YSCEC-CRAWLER2 /와이섹 크롤러/ 와이섹 크롤/ 크롤링/ 와이섹
연세대학교 지식창조 커뮤니티라는 거창한 이름의 사이트가 있습니다.
이 사이트는 연세대학교 재학생들의 강의 공지와 강의 자료들이 올라오는 사이트인데,
매일매일 로그인하고 수강하는 과목의 자료들이 업로드 되었는지 확인하는 작업이 여간 귀찮은게 아닙니다.
그래서 이번 개강을 맞아 나 대신 매일매일 와이섹 내용을 체크해주는 크롤러를 다시금 개발하게 되었습니다.
이전에 YSCEC-CRAWLER 를 올렸었는데, 이에 관한 내용은 다음 링크에서 확인해보시기 바랍니다.
블로그 : http://dytis.tistory.com/6
깃허브 : https://github.com/pfldy2850/YSCEC-CRAWLER
개발환경
NodeJS
ES7 문법으로 작성하였습니다.
소스코드
https://github.com/pfldy2850/yscec-crawler2
설치
npm i
깃허브에서 소스코드를 받은 후, 터미널에서 npm i를 실행시킵니다. 이 명령어는 package.json의 dependencies를 불러와서 설치해줍니다.
한 번 크롤링하기
npm start o
dependencies를 모두 설치하면, 한 번 크롤링하기를 실행할 수 있습니다.
처음 실행시에는 secret.json과 courseInfo.json을 만들게 됩니다.
다음번 실행시에는 추가적으로 만들 필요가 없습니다.
새롭게 크롤링된 데이터는 이전 크롤링된 데이터와 비교하여, 새로 갱신된 데이터들을 입력한 메일로 전송하게 됩니다.
* 틀리게 입력했을 경우에는 secret.json을 삭제하고 실행하면, 다시 입력을 받게 됩니다.
스케쥴링하여 크롤링하기
npm start s
dependencies를 모두 설치하면, 스케쥴링하여 크롤링하기를 실행할 수 있습니다.
처음 실행시에는 secret.json과 courseInfo.json을 만들게 됩니다.
다음번 실행시에는 추가적으로 만들 필요가 없습니다.
새롭게 크롤링된 데이터는 이전 크롤링된 데이터와 비교하여, 새로 갱신된 데이터들을 입력한 메일로 전송하게 됩니다.
현재 1시간 마다 한번씩 크롤링하며, 갱신된 데이터가 있으면 메일을 보냅니다.
* 틀리게 입력했을 경우에는 secret.json을 삭제하고 실행하면, 다시 입력을 받게 됩니다.
입력이 필요한 데이터
- id : YSCEC 로그인에 필요한 YSCEC 계정을 입력해주세요.
- password : YSCEC 로그인에 필요한 YSCEC 계정 비밀번호를 입력해주세요.
- rcv_email : 새 소식 메일을 받아볼 이메일을 입력해주세요. (예: pfldy2850@gmail.com)
- snd_google_email : 메일을 발송할 "구글" 이메일을 입력해주세요. (예: pfldy2850@gmail.com)
- snd_google_password : 메일을 발송할 "구글" 이메일의 비밀번호를 입력해주세요.
생성되는 데이터 파일들
- secret.json : 사용자의 개인정보가 저장되는 파일입니다.
- courseInfo.json : 크롤링된 YSCEC 데이터가 저장되는 파일입니다.
실행 결과