소개
Make 실습으로 ‘AI Times’의 인기 뉴스 Top10을 자동으로 가져와 요약하는 자동화 흐름을 만들었어요. 온라인 뉴스 정보를 자동 수집하는 시나리오를 따라해봤습니다
진행 방법
전체 흐름 구성
아래처럼 총 6단계로 구성했어요. 각 단계에 사용된 모듈은 다음과 같아요 👇
1️⃣ AI Times 홈 HTML 가져오기 (HTTP)
URL:
https://www.aitimes.com/Method: GET
응답 파싱: Yes ✅
🔍 Selector 찾기 팁 (개발자 도구 사용법)
웹 데이터를 자동으로 수집하려면, 반복되는 기사 목록을 감싸고 있는 **루트 요소(Root Element)**의 CSS Selector를 정확히 찾아야 해요. 이 Selector를 기반으로 Make의 Iterator가 각 항목을 반복할 수 있게 되죠.
Chrome에서 F12 또는 우클릭 → 검사(Inspect)
좌측 상단 화살표(요소 선택 도구) 클릭 → 원하는 요소 위에 마우스를 올리면 파란 박스로 영역이 표시돼요.
반복되는 기사 박스 전체(제목이나 이미지만 말고 전체 카드) 선택
우클릭 → Copy → Copy selector (또는 Copy JS Path)
예시:
#skin-9
Make ChatGPT 모듈에 입력
{
"html": "{{1.data}}",
"selector": "#skin-9"
}이렇게 하면, ChatGPT가 반복 리스트를 안정적으로 파싱(=정보추출)하고, 이후 Iterator에서 각 기사 항목으로 분리할 수 있어요.
✨ 요약:
AI Times 기사 목록의 루트 요소로
#skin-9를 개발자 도구로 직접 확인한 뒤, 이를 ChatGPT 모듈에 전달하여 반복 기사 리스트를 안정적으로 파싱(=정보추출) 했어요.
2️⃣ Title & Link 쌍으로 뽑아내기 (OpenAI)
모델:
gpt-4.1-mini역할: Developer/System
목적: HTML + selector 기반으로 제목/링크 JSON 추출
3️⃣ Iterator로 기사 반복 처리
배열:
pairs[]→ 각 기사별로 반복 진행
4️⃣ 본문 내용 가져오기 (HTTP)
기사 개별 링크 호출 → HTML 응답 받기
5️⃣ 내용 요약 및 정리 (OpenAI)
역할: User
프롬프트: 기사 본문 요약해서 포맷으로 반환하도록 지시
6️⃣ Google Drive에 자동 저장
폴더 경로 지정 (
53.01-aitimes)파일명: 날짜_제목 형식으로 자동 저장
결과와 배운 점
실제 저장된 결과
아래처럼 총 9개의 뉴스가 Google Drive에 자동 저장되었어요. 😃
예외 상황 발생 ⚠️
원래는 10개 기사 전체를 처리하려고 했는데… 마지막 10번째에서 에러 발생!
에러 메시지: RateLimitError → OpenAI API의 TPM(Tokens Per Minute) 초과로 발생한 문제였어요.
원인 분석 🔍
Make에서 10개의 기사를 순차 호출했는데,
9번째까지 사용한 토큰:
152,36710번째 요청 토큰 예상:
54,837합계:
207,204 tokens→ OpenAI의 1분 한도200,000 TPM을 초과함 ❌
해결 방법 🛠️
ChatGPT가 알려준 해결책은 다음과 같아요:
✅ 1) 2~3초 Delay 모듈 추가 → 가장 간단하면서도 효과적인 방법 ✅ 2) 모델 업그레이드: gpt-4.1 이상 모델은 TPM이 1,000,000+로 넉넉해요 ✅ 3) 10개 기사 한 번에 요청하는 구조 변경 → 성능, 비용, 안정성 모두 향상 ✅ 4) (비추천) 오류 무시 설정: Ignore errors of type RateLimitError
✨ 내 추천 순서
1️⃣ Delay 모듈 추가 → 거의 해결됨
2️⃣ 안 되면 gpt-4.1로 모델 변경
3️⃣ 최적화 구조로 개선(한 번에 요약)
최종 오류 수정해서 완성된 결과
1번 Delay 모듈 추가 해서 간단하게 해결 했습니다. 성공! 10개까지 다 요약 되었습니다
글 10개 중 9번째 글 열어보면 제목, 본문요약, 본문전체, url 링크가 있습니다. 다른 글도 이와 동일한 템플릿으로 구성 되어 있습니다
꿀팁)
1.Make 작업시 저장은 틈날 때 마다 해야 합니다. 작업한게 날라갈 수도 있음
2. 도시아재님이 팁 주신 걸 적용해서 했더니 파일명이 이쁘게 나왔습니다.
처음에는 스터디장님 주신 자료를 카피해서 붙여넣기 했을땐 텍스트로 인식해서 아래 캡쳐 이미지처럼 나왔었어요~
함수명을 불러와서 입력했습니다.
바이브 코딩은 눈 감고도 할 정도로 알아서 해주는 마법 지팡이 같습니다. 하지만 오류가 났을 때는 어디서 오류가 생겼는지 알 수가 없다고 들었어요. 하지만 Make는 모듈마다 연결해서 사용하기 때문에 어디에서 오류가 났는지 정확히 알 수 있는 장점이 있는 것 같아요. 요즘에 요령이 생겨서 Chatgpt에게 오류를 캡쳐해서 질문하여 스스로 해결하는 부분도 있습니다. 처음에 Make에 예쁜 겉모습에 재밌을 거라고 생각했다가 막상 해보니 쉽지 않다는 걸 깨닫고 참 사귀기 어려운 친구 같다는 생각이 들었지만 자동화를 해주는 능력에 매력을 느끼고 Make를 선택한게 3번째 입니다.
앞으로의 계획은?
저는 철강과 고철 이란 키워드로 뉴스를 크롤링 해서 요약하여 저장할 수 있는 걸 해보려고 합니다. 그리고 다른 분들에게 생소할 수 있는데 제가 건축자재 배수로트렌치 포스팅을 작성하는 만큼 유튜브나 자료들을 지식체계로 정리해서 컬럼식에 포스팅을 편리하게 작성해보고 싶습니다
더 나아가 뉴스레터, 유튜브 숏츠 영상까지 지금보다 빠르게 콘텐츠를 생산해낼 수 있었으면 합니다
도움 받은 글 (옵션)
김혜련 스터디장님의 스터디, 메뉴얼 참고