안녕하세요! 마케터 창명입니다. 오늘은 이메일로 뉴스 받아보기! 크롤링 & 자동화 방법 총정리 해보고자 합니다. 코딩 없이 할 수 있는 1)구글 알리미 2) GPT Task 부터 코딩으로 하는 3) 앱스크립트 작업과 이를 통한 메일 발송까지의 기능들을 간단히 소개해 드릴게요.

 

 


 

 

1. 구글 알리미
(Google Alerts)  

 

 
– 난이도: 하
– 비용: 무료
– 특징: 설정한 키워드와 관련된 뉴스가 정기적으로 이메일로 도착합니다.
– 가장 쉬운 방법으로 뉴스를 취합할 수 있습니다.

 

구글 알리미 설정 하는 방법 >> 완벽 가이드 보러가기

 

 


 

 

2. GPT Task
(ChatGPT 뉴스 크롤링)  

 

 

– 난이도: 중하
– 비용: 유료
– 특징: ChatGPT의 자동화 기능을 활용해 특정 키워드 뉴스를 모니터링하고 이메일로 받을 수 있습니다.
– 번거로운 작업 없이 간편하게 뉴스를 받아보고 싶다면 고려해 볼 만합니다.

 

챗GPT 태스크 (Tasks) 가이드: 코딩 없이 뉴스 자동 크롤링하는 방법 >> 가이드 보러 가기

 

 


 

 

3. 구글 스프레드시트 앱스크립트
(Google Sheets + Apps Script)

– 난이도: 상
– 비용: 무료
– 특징: 앱스크립트를 이용해 뉴스 데이터를 자동으로 가져오고, 이메일로 발송할 수도 있습니다.
– 코딩이 필요하지만, 무료로 자동화할 수 있다는 장점이 있습니다.

 

Google Apps Script(GAS)는 자바스크립트 기반의 스크립팅 언어로, Google Sheets, Gmail, Drive 등의 Google Workspace 서비스를 자동화할 수 있도록 설계된 언어입니다. Google Sheets에서 특정 데이터를 가져오거나, 자동으로 이메일을 보낼 수도 있습니다.

 

예를 들어, 특정 뉴스 웹사이트에서 데이터를 가져와 Google Sheets에 저장하고, 일정 시간마다 이메일로 발송하는 기능을 만들 수도 있습니다. 다만, 웹 크롤링에 필요한 fetch 기능은 있지만, Python의 BeautifulSoup이나 requests 같은 유용한 라이브러리는 없기 때문에 일부 제한이 있을 수 있습니다. 따라서 간단한 자동화 작업에는 앱스크립트가 유용하지만, 정교한 크롤링과 데이터 처리가 필요하다면 Python이 더 적합할 것 같네요!

 

 

<Apps Script 뉴스크롤링 활용방법 – 간단히>

 

1) 구글 스프레드시트 생성  

  • 구글 드라이브에서 새 스프레드시트를 만듭니다
  • 시트 이름은 원하는 대로 설정해 주세요!

 

 

2) 앱스크립트 편집기 열기

  • 스프레드시트 상단 메뉴에서 확장 프로그램 스크립트 편집기를 클릭해 앱스크립트 편집기를 엽니다

 

 

여기까지 잘 따라오시면 기본적으로 Codegs 파일이 생성됩니다.

 

 

3) 코드 작성  

  • 예시 코드를 참고해 원하는 기능을 구현합니다. 코드 파일 공유드리니, 앱스크립트를 다룰 수 있는 분들은 한번 시도해 보세요!

 

 

아래는 제가 앱스크립트 코드를 code.gs에 넣어둔 모습입니다.

 

 

예시 코드에서는 특정 키워드를 검색어로 하여 구글 뉴스 검색 결과 페이지를 크롤링하고 제목과 링크를 시트에 저장한 뒤 이메일을 발송하는 코드입니다.

 

 

이제 앱스립트 코드를 작성 후 실행을 하게 되면 아래와 같이 ‘구글에서 확인하지 않은 앱’이라고 떠요! 

액세스 알럿이 뜨는데 이때 고급 설정 숨기기 -> 내가 설정한 ‘앱스크립’ 명에 제목 예)뉴스크롤링(으)로 이동하시고 나서 -> ‘앱스크립트’ 명의 액세스 요청을 허용하시고 오른쪽 이미지와 같이 승인해 주시고 계속해 주시면 완료!

 

 

4) 트리거 설정  자동 실행 (매일 오후 6시)

  • 앱스크립트 편집기에서 왼쪽에 있는 시계 모양의 트리거 메뉴를 클릭합니다
  • 새 트리거를 추가하고 함수 이름 fetchNewsAndSendEmail을 선택합니다
  • 시간 기반으로 설정하여 원하는 간격 또는 특정 시각에 자동으로 실행되도록 합니다
  1. “Apps Script” 창에서 `”트리거”` 메뉴 클릭
  2. “트리거 추가” 버튼 클릭
  3. 설정 값 입력

    – 실행할 함수 `fetchNewsAndSendEmail`
    – 이벤트 소스: `시간 기반`
    – 트리거 유형: `일 단위 타이머`
    – 시간 선택: `오후 5시` *시간은 예시에요!

 

 

5) 실행 및 확인  

  • 수동으로 코드를 한 번 실행해 정상 동작을 확인합니다
  • 스프레드시트에 데이터가 들어오는지, 메일이 발송되는지 확인합니다

 

 

6) 최종 메일 확인

위 과정을 모두 거치면 매일 내가 원하는 시간에 정기적으로 발송됩니다. 다만, 시간 선택이 오후 5시 ~6시 사이로 광범위하게 되어있어서 정확한 시간에는 발송이 어려운 점 참고해 주세요!

 

<실제 앱스크립트 코드로 작업한 자동화 골프 뉴스>
<실제 앱스크립트 코드로 작업한 자동화 골프 뉴스>

 

 


 

 

4. 파이썬 (Python + 웹 크롤링)

 

 

– 난이도: 상
– 비용: 무료
– 특징: Python의 requests, BeautifulSoup, Selenium, lxml, smtplib 등을 활용해 뉴스 데이터를 직접 크롤링하고, 정기적으로 이메일을 발송할 수 있다고 합니다.
– SMTP를 이용해 원하는 시간대에 자동으로 이메일을 보낼 수도 있습니다.

 

추후 좋은 GitHub 소스코드를 찾으면 공유해 드리겠습니다. 코딩 경험이 있으시다면 파이썬은 가장 유연하고 강력한 방법이죠. Python을 다룰 수 있다면 시도해 볼 만하지만, 개인적으로는 3번 앱스크립트 작업을 추천드립니다. 어떤 방법이든 목표와 리소스에 맞춰 선택하시면 되니까요!

 

개발자분들께서는 더 좋은 방법이 있을 수도 있으니, 더 좋은 방법이 있다면 편히 브런치 댓글로 공유 부탁드려요!

 
 
 

장창명님이 브런치에 게재한 글을 편집한 뒤 모비인사이드에서 한 번 더 소개합니다.