작은 채널의 바이럴 숏츠, 직접 탐색해보기(2)

Ratio Radar v2 – AI 숏츠 한국 버전
“조회수는 높은데 구독자는 적은 AI 숏츠” 를 자동으로 찾아주는 사례글
외국 영상 위주 결과, URL 길이 오류, 한글 필터 실패 등을 모두 해결해 국내 트렌드에 바로 쓸 수 있습니다.


시도하고자 했던 것과 그 이유를 알려주세요.

개선 목표

이유

한국어 숏츠만 수집

외국/롱폼이 섞이면 국내 트렌드 해석이 왜곡됨

4 페이지 페이징 + URL 길이 오류 해결

50개 한계를 넘어 최대 200개 후보 확보

채널·영상 ID 50개씩 배치 호출

URLFetch 2 KB 제한 우회

영상 길이·#shorts 태그 이중 판별

Shorts API가 공식 지원되지 않아 직접 판별 필요

실행 로그 강화

단계별 숫자로 즉시 원인 파악, 디버깅 속도 ↑


🛠 진행 방법

도구

활용 포인트

Google Apps Script

서버·배포·스케줄링까지 브라우저 한 번에

YouTube Data API v3

검색(Search)·상세(Videos)·채널(Channels) 통계

HTML + Vanilla JS

검색창, 결과 테이블, 로그 <pre> 출력

<details><summary>사용한 프롬프트 전문</summary>

diff

복사편집

AI 키워드 숏츠를 한국 영상만 필터링해 조회수·구독자·언어 조건으로 정렬·표시하는 Apps Script 코드(‘+’ 없이)와 index.html을 작성해 줘. 페이징 4페이지, Videos·Channels API는 50개씩 배치 호출, ‘한국 영상’은 defaultAudioLanguage==='ko' 또는 한글 포함으로 판단. 실행 로그를 pre 태그에 출력해.

</details>

핵심 코드 (요약)

javascript

복사편집

const API_KEY = 'YOUR_API_KEY_HERE' const MAX_PAGES = 4, MAX_RESULTS = 50, MAX_SUBS = 50000 function isoSec(iso){const m=/PT(?:(\d+)H)?(?:(\d+)M)?(?:(\d+)S)?/.exec(iso);return((+m[1]||0)*3600)+((+m[2]||0)*60)+(+m[3]||0)} function searchVideos(q){ // ❶ 한국·한글 우선 검색 4페이지 // ❷ videoId 50개씩 Videos API 호출 // ❸ channelId 50개씩 Channels API 호출 // ❹ 60초 이하 or #shorts 태그 판별 // ❺ 한글·ko 언어 필터, 구독자·조회수 조건 // ❻ 결과·로그 반환 }

전체 코드는 Google Apps Script 편집기에 그대로 붙여넣으면 실행됩니다.

활용 캡쳐

한국 웹 사이트의 스크린 샷
여러 비디오를 보여주는 YouTube 페이지의 스크린 샷
과거에 방영 된 한국 TV 쇼 목록

✅ 결과와 배운 점

배운 점

꿀팁

URL 길이 2048 B 제한

ID·채널 50개씩 잘라 호출하면 안정적

한국어 판별

오디오 언어 ko OR 제목·설명에 /[가-힣]/

Shorts 판별

duration ≤ 60s 또는 #shorts 태그

디버깅은 숫자 로그

각 단계 통과 개수만 찍어도 원인 즉시 확인

시행착오

문제

해결

URLFetch “길이 초과”

Videos/Channels API 배치 호출

결과 0개 (외국 영상)

regionCode=KR & relevanceLanguage=ko + 한국어 필터

RelatedToVideoId 400

OAuth 요구 → 변형 키워드(“키워드 숏츠”) 다중 검색

👉 이 게시글도 읽어보세요