HomeBlogTranscribePlansAPI Keys

하나의 사용자 지정 함수로 Google Sheets의 YouTube 스크립트

YouTube URL이 한 열에 있고 가져온 스크립트가 다음 열에 나타나는 Google Sheets 스프레드시트

YouTube 스크립트를 Google Sheets로 가져오려면 하나의 Apps Script 함수가 필요합니다. 한 번 붙여넣으면 =YT_TRANSCRIPT(A2)는 모든 기본 제공 공식처럼 작동합니다: 한 열의 URL, 다음 열의 스크립트. 전체 스크립트와 누군가 당신에게 경고하지 않으면 당신을 물 수 있는 2개의 Sheets 관련 함정이 있습니다.

스크립트

스프레드시트를 열고 확장 프로그램 > Apps Script로 이동하여 이를 붙여넣으세요:

const API_KEY = 'yt_YOUR_KEY';

/**
 * Fetches the transcript of a YouTube video.
 * @param {string} url Any YouTube URL or a bare 11-char video id.
 * @param {number} maxChars Optional length cap (default 5000).
 * @return {string} The transcript text.
 * @customfunction
 */
function YT_TRANSCRIPT(url, maxChars) {
  if (!url) return '';
  const endpoint = 'https://youtube2text.org/api/transcribe'
    + '?url=' + encodeURIComponent(url)
    + '&maxChars=' + (maxChars || 5000);
  const response = UrlFetchApp.fetch(endpoint, {
    headers: { 'x-api-key': API_KEY },
    muteHttpExceptions: true
  });
  const body = JSON.parse(response.getContentText());
  if (body.error) return 'ERROR: ' + body.error.code;
  return body.result.content;
}

저장하면 함수가 시트에서 활성화됩니다. @customfunction 태그는 자동 완성에 등록하는 것입니다. muteHttpExceptions은 404가 아무도 요청하지 않은 스택 추적이 있는 빨간 셀로 폭발하는 것을 방지합니다.

키의 경우: 브라우저에서 https://youtube2text.org/api/demo-key를 요청하고 {"success": true, "apiKey": "yt_..."}를 돌려줍니다. 무료 공유 키, 계정 없음, IP당 월 5개 비디오로 제한됩니다. 이것을 시도하기에 좋습니다. 실제 사용을 위해 자신의 것을 얻으세요.

사용

  1. 열 A에 비디오 URL을 배치하세요. 전체 링크, youtu.be 짧은 링크 또는 11자 ID가 모두 작동합니다.
  2. B2에서 =YT_TRANSCRIPT(A2)를 입력하세요.
  3. 더 많거나 더 적은 텍스트가 필요하신가요? =YT_TRANSCRIPT(A2, 20000)은 명시적으로 상한선을 설정합니다.
  4. 공식을 열 아래로 끌어다가 셀이 채워지는 것을 봅니다.

스크립트는 YouTube의 자신의 캡션에서 나옵니다. 크리에이터가 업로드한 경우 수동, 그렇지 않으면 자동 생성, 영어 선호 및 존재하는 모든 언어로 폴백됩니다.

maxChars가 다른 곳보다 여기서 더 중요한 이유

Google Sheets 셀은 최대 50,000자를 보유합니다. 그것은 하드 플랫폼 제한이고, API의 기본 150,000자 상한선은 그것을 지나갑니다. 긴 팟캐스트 에피소드는 셀에 도달하지 못합니다. Sheets에서는 항상 50000 이하의 maxChars를 전달하세요. 스크립트를 기본값 5000으로 설정하여 요약, 키워드 확인, AI 공식에 공급하는 것을 다루지만 스프레드시트를 소설로 바꾸지는 않습니다.

재계산 함정

사용자 지정 함수 접근 방식의 정직한 제한: 파일이 다시 열릴 때마다 포함하여 재계산할 때마다 Sheets는 사용자 지정 함수를 다시 실행합니다. 각 재실행은 실제 API 호출이므로 40개의 스크립트 공식이 있는 시트는 열 때 조용히 40개의 비디오를 다시 가져오고 아침 식사를 위해 할당량을 먹습니다. 수정은 간단합니다: 스크립트가 도착하면 셀을 선택하고 값으로 붙여넣습니다 (복사, 그다음 특수 붙여넣기 > 값만). 텍스트가 유지됩니다. 공식과 그 식욕은 사라집니다.

셀이 ERROR를 말할 때

함수는 충돌하지 않고 읽을 수 있는 코드를 반환합니다. ERROR: TRANSCRIPT_UNAVAILABLE은 비디오가 모든 캡션을 갖지 않음을 의미합니다. 가져올 것이 없습니다. ERROR: RATE_LIMIT_EXCEEDED는 키의 월간 할당량이 소진되었음을 의미하며, 공유 데모 키에서 빠르게 발생합니다. ERROR: INVALID_URL은 셀에 YouTube 비디오와 유사한 것이 포함되지 않음을 의미합니다.

어디로 가져갈 것인가

스크립트로 가득한 시트는 놀랍도록 좋은 연구 도구입니다. 콘텐츠 연구 게시물에서 해당 워크플로를 살펴봅니다. 공식을 능가하고 비디오 발행 시 스크립트를 자동으로 가져오려고 하면 n8n 워크플로는 이를 무료로 수행합니다.

자신의 키 (공유 할당량 없음, 전화 없음, 카드 없음)의 경우 youtube2text.org/app/keys에서 Google으로 로그인하세요. 무료는 월 5개 비디오를 포함합니다. $5.99는 50을 얻고, $9.99는 500을 얻고, $19.99는 무제한입니다. API_KEY에 붙여넣으면 시트가 나머지를 수행합니다.