API

🚀 MoneyPrinter YouTube Shorts 자동 업로드 테스트 기록 및 문제 해결 과정

Solo.dev 2025. 2. 16. 01:37

YouTube Shorts 자동 업로드 시스템을 테스트하면서 여러 가지 문제를 겪었다. 이 글에서는 테스트 과정과 주요 문제점, 해결 방법, 앞으로의 개선 방향을 정리한다.


✅ 1. 테스트 개요

🎯 목표

  • MoneyPrinter를 이용해 YouTube Shorts를 자동 생성 및 업로드
  • AI 이미지 생성, 음성 합성(TTS), 영상 편집, 자동 업로드까지 완전 자동화

📌 진행 과정

  1. 유튜브 영상 주제 자동 생성
  2. 스크립트 생성 (4문장 내외, 짧고 간결한 내용)
  3. TTS 변환하여 음성 파일 생성
  4. AI 이미지 생성 후 이미지 시퀀스 구성
  5. 이미지 + 음성 합쳐서 영상 제작 (MoviePy 사용)
  6. 유튜브에 자동 업로드

⚠ 2. 테스트 중 발생한 문제들 & 해결 방법

1️⃣ .models.json 파일 문제

  • 문제: g4f 패키지에서 .models.json 파일을 찾을 수 없다는 오류 발생
  • 원인: g4f 패키지가 설치될 때 .models.json이 포함되지 않음
  • 해결 방법:
    ✅ .models.json 파일을 직접 생성하거나 g4f 패키지를 재설치

2️⃣ AssemblyAI API Key 문제

  • 문제: TTS 생성 후 자막 생성 시 AssemblyAI API Key 오류 발생
  • 원인: config.json에서 API Key 값이 올바르지 않음
  • 해결 방법:
    ✅ config.json에서 AssemblyAI API Key 확인 후 올바르게 입력
    ✅ get_assemblyai_api_key() 함수 실행 후 반환값 확인

3️⃣ ImageMagick 설정 문제

  • 문제: convert 명령어 실행 불가 → ImageMagick 경로 문제
  • 원인: config.json에서 "imagemagick_path"가 올바르게 설정되지 않음
  • 해결 방법:
    ✅ config.json에서 "imagemagick_path"를 확인하여 올바른 경로 입력
    ✅ get_imagemagick_path() 함수 실행 후 실제 경로 반환되는지 확인
    ✅ ImageMagick 재설치 후 경로 다시 설정

4️⃣ YouTube 업로드 후 자동으로 "비공개" 설정되는 문제

  • 문제: YouTube에 업로드되긴 하지만, 비공개 상태로 업로드됨
  • 원인: Selenium 스크립트에서 "공개" 설정하는 과정 누락되었거나 잘못 설정됨
  • 해결 방법 (예상):
    ✅ YouTube 업로드 스크립트에서 공개 상태로 설정하는 코드 추가
    ✅ 업로드 후 Selenium으로 직접 상태 변경 확인
    ✅ YOUTUBE_RADIO_BUTTON_XPATH 값이 올바르게 설정되었는지 확인

5️⃣ .mp 디렉토리 이미지 문제

  • 문제: combine() 함수에서 FileNotFoundError 발생
  • 원인:
    • ImageClip(image_path) 실행 시 해당 파일을 찾지 못함
    • .mp 디렉토리에 이미지가 있는데도 불구하고 파일이 없다는 오류 발생
  • 해결 방법 (예상):
    ✅ combine() 함수에서 os.path.exists(image_path) 확인 후 파일이 없으면 경로 출력
    ✅ try-except로 예외 처리하여, 파일이 없을 경우 로그 남기고 스크립트 종료 방지
    ✅ 이미지 생성 과정에서 파일 저장이 정상적으로 이루어지는지 확인

🚀 3. 최종 정리 & 내일 할 일

🎯 내일 해결해야 할 문제 1️⃣ YouTube 업로드 후 자동으로 "공개" 상태 적용
2️⃣ .mp 디렉토리에서 이미지 존재 여부 확인 및 디버깅
3️⃣ combine() 함수에서 os.path.exists(image_path) 체크 후 문제 해결
4️⃣ 예외 처리 (try-except) 추가하여 안정성 향상

이 문제만 해결하면 완전 자동 업로드 가능할 것으로 예상됨! 💪