본문 바로가기
사이드 프로젝트/뉴스구독 웹서비스

AWS What's new 뉴스레터4 | 매주 화요일마다 메일이 전송됩니다~

by 카프리썬 2021. 4. 20.
728x90

AWS 뉴스메일 자동화 프로그램 개발일지 ▼

2021.04.16 - AWS What's new 뉴스레터1 | MongoDB를 써볼까?!

2021.04.18 - AWS What's new 뉴스레터2 | 이메일 전송 사전준비 및 이해

2021.04.18 - AWS What's new 뉴스레터3 | 크롤링데이터를 이메일로 전송하기

2021.04.20 - AWS What's new 뉴스레터4 | 매주 화요일마다 메일이 전송됩니다~ (현재글)

 

 

이제 지금까지 얼추 파이썬 코드가 마무리 되었다. 

크롤링해서, 저장하고, 메일을 보내기까지..

이제 이 뉴스레터를 매주 월요일마다 전송할 수 있도록 이 작업을 자동화하려고 한다. 

 

실제로 aws였다면 lambda에 코드를 넣고,cloudwatch로 cron을 돌렸을텐데 지금은 윈도우환경이다.

윈도우에도 비슷한 작업을 하는 기능이 있는데 바로 작업스케쥴러이다. 

 

윈도우에서 작업스케쥴러를 실행 (윈도우검색창에서 작업관스케쥴러를 검색)

그리고 우측상단에 작업만들기 선택

새 작업만들기

아래와 같이 이름을 작업이름을 지정하고, 가장높은수준의 권한으로 실행을 클릭한다

트리거 만들기 

이제 이 작업을 언제 수행하게 할지, 트리거를 작용하게 할 상황을 설정한다.

나는 매주금요일 오전9:30마다 수행되게 설정했다.

동작 만들기

이제 작업을 위해 실행할 동작을 설정한다. 

이때 프로그램은 python이 설치되어 있는 경로, 인수추가는 실행시키려는 스크립트의 절대경로를 입력하면 된다.

추가로 python이 설치되어 있는 경로를 볼려면 cmd에 where python 실행시켜서 볼 수 있었다!

 

잘 설정되었는지는 확인

작업스케쥴러 라이브러리에서 확인할 수 있따. 아직 수행된적이 없어서 준비상태인듯? 

이렇게 되면 설정은 완료되었다. 과연 내가 설정한대로 스케쥴러가 잘 작동되는지는 추후 지켜봐야겠다.

출처 : hogni.tistory.com/11

 

 


+추가. 작업스케쥴말고 cron으로 바꾸기

혹시 몰라서 바로 테스트할 수 있게 다른 작업(56분에 생성하고 8시에 실행하는 작업)으로 만들어놨었다. 

그런데 아무리 10분이 넘게 기다려도 동작하지 않았다......좌절

 

그래서 조금 구글링해보니 이런 사례가 꽤나 있었다고 한다. 그래서 윈도우에 cron프로그램을 설치하고야 말았다..

mac이나 linux에서라면 내장되어 있었을텐데 윈도우라 따로 설치해야한다...

컴터용량이 조금씩 차는 것 같아서 다운받고 싶지 않았지만...결국....

 

cron이란? 

유닉스계열 os에 있는 시간기반 잡스케쥴러이다. 오 신기한건 AT&T 벨 연구소에서 개발했다고 한다

 

cron다운로드

위의 홈페이지에 가서 nncronlt117.exe 다운받는다.

아래의 경로에 설치된 것을 볼 수 있다.

cron실행하기

cron실행하는 방법은 exe를 실행하는게 아니라 cron.tab파일을 수정하는 것으로 실행할 수 있다.

이때, 프로그램을 관리자 권한으로 실행해야 파일내용을 수정한 후 저장이 가능하다

[워드패드-관리자권한으로 실행 - 파일 - 열기 - cron.tab 파일 ] 순서로 파일을 열어서 내용을 수정한다

 

crontab 내용수정하기

[작업예약시간 - 실행할 프로그램(파이썬)-실행할 대상(파이썬스크립트경로) ] 순으로 작성한다 

일단 실행할 프로그램이랑 대상은 이전에 스케쥴러랑 같은데 작업예약시간이 문제다 

 

작업예약시간은 분/시/날짜/달/요일 이 형식이다.

예를 들어서 이렇게 표현한다

0 9 * * 1-5 : 0분 9시 모든날짜 모든달 월(1)부터금(5)까지

 

그럼 나는 45분 20시 모든날짜 모든달 화요일 이렇게 테스트를 해보겠다. 과연 잘 수행이 될것인가?

휴 다행히 20:45분에 메일이 도착했다..이제 테스트는 됐으니 다른시간으로 변경해서 사용해봐야겠따

 

 

출처  ; hleecaster.com/task-scheduling-in-windows-using-cron/

반응형