Skip to content

상명대학교 공식 사이트 공지사항 알리미

Notifications You must be signed in to change notification settings

llqqssttyy/SMU-Notification

Repository files navigation

🦌 SMU-Notification

상명대학교 공지사항 알리미


👋 프로젝트 소개

평일 오후 7시, 사이트에 올라온 공지사항을 스크래핑하여 메일로 보내주는 자동화 프로그램입니다.
상명대학교 공식 홈페이지에 올라온 공지사항을 받아보실 수 있습니다.

실행 결과

result


👏 개발 기간

  • 2023.05.29 ~ 2023.06.04

👍 설치 및 실행방법

  1. 이 저장소를 클론합니다
    git clone https://github.com/llqqssttyy/SMU-Notification.git
    
  2. 클론한 디렉토리로 이동해 의존성을 설치합니다.
    cd your-directory
    npm install
    
  3. GitHub Actions를 활성화합니다.
  4. GitHub Secrets에 환경변수를 추가합니다.
    EMAIL_SERVICE=gmail
    EMAIL_ADDRESS=your-email
    EMAIL_PASSWORD=your-password
    
    gmail을 사용하실 경우 PASSWORD엔 2단계 인증을 통해 발급 받은 비밀번호를 넣어줘야 합니다. 해당 내용은 이곳을 참고해주세요.

👐 개발 환경

  • node.js
  • cheerio
    스크래핑한 공지사항 페이지에서 데이터를 뽑고, 이메일 전송용 html을 동적으로 생성할 때 사용했습니다. 해당 내용은 makeHTML.js에서 확인 가능합니다.
  • axios
    HTTP 통신을 통해 스크래핑할 페이지의 html 문서를 불러오는 데 사용했습니다.
  • nodemailer
    이메일을 전송할 때 사용한 라이브러리입니다. transporter.sendMail() 함수를 async로 감싼 후 모듈화하여 사용했습니다. 해당 내용은 sendMail.js에서 확인 가능합니다.
  • dotenv
    이메일 서비스, 이메일 주소, 비밀번호와 같이 민감한 정보를 .env 파일에 저장하고, 이를 사용하기 위해 해당 라이브러리를 이용했습니다.
  • Github Actions
    원하는 시점에 프로그램을 백그라운드에서 실행하기 위해 Github Actions의 main.yml 파일에 cron 설정을 했습니다.

About

상명대학교 공식 사이트 공지사항 알리미

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published