본문 바로가기
블로그운영& 마케팅

GPT 블로그 자동화 구현하기: 디렉토리, 썸네일, 글쓰기까지 AI로 끝낸다

by ICT리더 리치 2025. 6. 30.
반응형

블로그 운영, 아직도 수작업으로 하고 계신가요? 이제 GPT를 활용해 글쓰기부터 이미지, 폴더 관리까지 자동화하는 시대입니다!

안녕하세요, 오늘은 제가 직접 구현하고 테스트한 GPT 기반 티스토리 블로그 자동화 시스템을 소개드릴게요. 단순히 글을 자동으로 쓰는 수준을 넘어서, 디렉토리 정리, 이미지 생성, 포스팅용 썸네일 제작, 심지어 이미지뷰 설정까지 AI로 통합 관리하는 방법을 알려드립니다. IT와 블로그를 동시에 사랑하는 분들께, 시간은 아끼고 퀄리티는 높이는 자동화 워크플로우를 공유드릴게요!

GPT 블로그 자동화 시스템 인포그래픽: 노트북 앞 여성과 AI, 폴더, 이미지 아이콘이 포함된 고해상도 시각 자료
GPT 기반 블로그 자동화의 핵심 요소를 시각화한 프리미엄 인포그래픽으로, 글쓰기·디렉토리·이미지 생성 과정을 한눈에 보여줍니다.

1. GPT 블로그 자동화 개요

GPT 블로그 자동화는 단순한 글 작성 이상의 가치를 제공합니다. 키워드를 기반으로 자동으로 글을 생성하고, HTML 포맷까지 적용되며, 각 글에 맞는 이미지를 자동 생성한 후 폴더별로 정리까지 수행하는 전체 파이프라인을 구성할 수 있습니다. 이제는 글 작성 → 이미지 제작 → 파일정리 → 메타정보 출력까지 단 한번의 실행으로 처리할 수 있는 시대입니다. 이 자동화는 티스토리 블로그와 같은 플랫폼에서 콘텐츠 관리의 효율성과 일관성을 크게 향상시켜줍니다. 다만, 블로그 퀄리티 유지를 위해서는 자동화구현 보다는 반자동으로 단계별 검증과정이 필수입니다.

2. 자동 이미지 생성 시스템 구조

자동 이미지 생성 시스템은 OpenAI의 이미지 생성 API를 기반으로 하며, 블로그 제목 또는 콘텐츠 주제를 기준으로 세 가지 이미지를 생성합니다.

이미지 종류 용도 해상도
대표 썸네일 리스트용 미리보기, SNS 공유 1024x1024 PNG/WebP
본문용 이미지 내용 설명, 시각 보조 최대 1024px, 최대 300KB
세로형 인포그래픽 고해상도 정보 시각화 1024x1792 PNG/WebP

또한, 생성된 이미지에는 자동으로 alt 태그와 캡션 텍스트가 부여되어 SEO와 접근성까지 한 번에 해결됩니다.

3. 포스트별 디렉토리 & 파일 자동 정리

자동화된 포스팅 구조에서는 각 포스트별로 슬러그명을 기준으로 폴더를 자동 생성합니다. 폴더 안에는 다음과 같은 구조로 정리됩니다:

  • /slug-name/index.html: 포스트 본문 HTML
  • /slug-name/images/: 대표 썸네일, 본문 이미지, 인포그래픽 등
  • /slug-name/meta.txt: 태그, 카테고리, 슬러그 정보 자동 출력

이러한 구조 덕분에 수많은 포스트를 작성하더라도 정리정돈은 물론, 백업 및 복원도 용이해지며 협업 시에도 매우 효율적입니다.

4. 썸네일 및 슬러그 자동 생성기 활용

썸네일 이미지는 블로그 클릭률과 SEO에 매우 중요한 요소입니다. GPT 기반 자동화 시스템에서는 포스팅 제목을 바탕으로 텍스트 없는 대표 썸네일텍스트 포함 본문용 썸네일을 각각 생성합니다. 썸네일 자동 생성기 프롬프트는 포스팅 주제에 맞는 인물 중심 장면을 요청하며, 밝은 조명, 중앙 배치, 깨끗한 배경이 기본 조건입니다.

또한 슬러그 생성기는 제목을 영문 소문자 + 밑줄로 변환하여 gpt_blog_auto_system과 같은 형식으로 출력하며, 자동 폴더 생성과 메타태그 등록에 활용됩니다.

5. 이미지뷰+alt 텍스트 자동 관리

자동 생성된 이미지는 HTML에 삽입될 때, GPT가 작성한 설명을 alt 속성으로 자동 삽입합니다. 예를 들어, “GPT가 블로그 자동화를 수행하는 모습을 설명하는 인포그래픽”처럼 구체적인 텍스트가 자동으로 반영됩니다. 또한 loading="lazy" 속성도 기본으로 포함되어, 모바일에서도 빠르게 로딩되며 UX를 향상시킵니다.

  • 모든 이미지에는 alt + 캡션 자동 생성
  • 이미지 삽입 시 lazy-load 기본 적용
  • 블로그 SEO 최적화를 위한 핵심 구성 요소

6. 전체 자동화 스크립트 연결 구조 (파이썬 핵심코드 포함)

전체 블로그 자동화는 GPT 프롬프트 실행 → HTML 생성 → 이미지 생성 → 파일 정리 → 메타데이터 출력까지 하나의 워크플로우로 구성됩니다. 아래는 주요 흐름입니다:

단계 작업 내용
STEP 1~5 GPT로 HTML 콘텐츠 생성
이미지 생성 대표 썸네일 + 인포그래픽 + 본문 삽입용
폴더/파일 저장 slug 폴더 구조 자동 생성 및 분류
메타데이터 출력 태그, 슬러그, 카테고리 자동 저장

▩ 1) blog_auto_generator.py (자동화 핵심 예시)

▩ 2) tistory_post_with_image.py – 이미지 포함 자동 업로드

▩ 3) generate_meta_txt.py (메타생성 예시)

▩ 4) auto_generate_blog.sh 예시

 

 

▩ 1) blog_auto_generator.py (자동화 핵심 예시)

// 🧩 blog_auto_generator.py (자동화 핵심 예시)

import os
import openai
from slugify import slugify
from datetime import datetime

# OpenAI API 키 설정
openai.api_key = os.getenv("OPENAI_API_KEY")

# 사용자 입력
title = "GPT 블로그 자동화 구현기: 디렉토리, 썸네일, 글쓰기까지 AI로 끝낸다"
slug = slugify(title)
today = datetime.today().strftime('%Y%m%d')
base_path = f"./{slug}/"

# 폴더 생성
os.makedirs(base_path + "images", exist_ok=True)
os.makedirs(base_path + "backup", exist_ok=True)

# GPT 프롬프트 작성
system_prompt = "티스토리 블로그 형식에 맞게 HTML 콘텐츠를 5단계로 나눠 작성하세요."
user_prompt = f"{title}라는 제목으로 블로그 글을 HTML 태그 포함해서 작성해줘. STEP 1부터 5까지 순차적으로 나눠줘."

# GPT 콘텐츠 생성
response = openai.ChatCompletion.create(
    model="gpt-4",
    messages=[
        {"role": "system", "content": system_prompt},
        {"role": "user", "content": user_prompt}
    ]
)

# 결과 저장
full_html = response['choices'][0]['message']['content']
with open(base_path + "index.html", "w", encoding="utf-8") as f:
    f.write(full_html)

# 슬러그 및 태그 추출
tags = ["GPT블로그", "자동화시스템", "티스토리운영", "이미지생성", "썸네일자동화",
        "파일정리", "슬러그생성", "블로그자동화", "AI콘텐츠", "ChatGPT활용"]
with open(base_path + "meta.txt", "w", encoding="utf-8") as f:
    f.write(f"slug: {slug}\n")
    f.write("tags: " + ", ".join(tags) + "\n")

# 이미지 생성 예시 (DALL·E API or 임의 이미지 다운로드 방식 생략)
# ex: dalle.create(prompt=f"{title} 대표 썸네일", size="1024x1024") 등

print("✅ 블로그 콘텐츠 자동 생성 완료!")
print(f"📁 저장 경로: {base_path}")

GPT 기반 블로그 자동화 시스템을 실행 중인 20대 여성의 고해상도 썸네일 이미지
전문가 환경에서 노트북을 사용해 GPT 자동화 시스템으로 콘텐츠를 생성 중인 모습을 담은 밝고 세련된 이미지입니다.

 

2) tistory_post_with_image.py – 이미지 포함 자동 업로드

// 🧩 tistory_post_with_image.py – 이미지 포함 자동 업로드

import requests
import os
from bs4 import BeautifulSoup

ACCESS_TOKEN = os.getenv("TISTORY_TOKEN")
BLOG_NAME = "your-blog-name"
TITLE = "GPT 블로그 자동화 구현기: 디렉토리, 썸네일, 글쓰기까지 AI로 끝낸다"
CATEGORY_ID = "3"  # 조회한 카테고리 ID 사용

# 업로드할 썸네일 파일 경로
THUMBNAIL_FILE = "gpt_blog_auto_system/images/thumbnail.png"
CONTENT_FILE = "gpt_blog_auto_system/index.html"

def upload_image(filepath):
    url = "https://www.tistory.com/apis/post/attach"
    files = {'uploadedfile': open(filepath, 'rb')}
    data = {
        'access_token': ACCESS_TOKEN,
        'output': 'json',
        'blogName': BLOG_NAME
    }
    response = requests.post(url, data=data, files=files)
    result = response.json()
    if 'tistory' in result:
        image_url = result['tistory']['url']
        print("✅ 이미지 업로드 완료:", image_url)
        return image_url
    else:
        raise Exception(f"❌ 이미지 업로드 실패: {result}")

def read_and_replace_image(html_path, new_image_url):
    with open(html_path, encoding="utf-8") as f:
        soup = BeautifulSoup(f, "html.parser")
    # 첫 번째 <img> src만 교체 (필요 시 더 정교화 가능)
    img_tag = soup.find("img")
    if img_tag:
        img_tag['src'] = new_image_url
    return str(soup)

def upload_post(content_html):
    url = "https://www.tistory.com/apis/post/write"
    payload = {
        "access_token": ACCESS_TOKEN,
        "output": "json",
        "blogName": BLOG_NAME,
        "title": TITLE,
        "content": content_html,
        "category": CATEGORY_ID,
        "visibility": 3,
        "tag": "GPT블로그,AI자동화,티스토리,썸네일업로드,ChatGPT활용",
        "acceptComment": 1
    }
    response = requests.post(url, data=payload)
    if response.status_code == 200:
        print("🚀 포스팅 완료:", response.json())
    else:
        print("❌ 포스팅 실패:", response.text)

if __name__ == "__main__":
    try:
        img_url = upload_image(THUMBNAIL_FILE)
        html_content = read_and_replace_image(CONTENT_FILE, img_url)
        upload_post(html_content)
    except Exception as e:
        print("❗ 오류 발생:", e)

3) generate_meta_txt.py

// ✅ 메타 생성 예시

import os
import re
from datetime import datetime

# 입력값 (자동화 시스템과 연동 시 GPT 응답에서 가져올 수 있음)
title = "GPT 블로그 자동화 구현기: 디렉토리, 썸네일, 글쓰기까지 AI로 끝낸다"
tags = ["GPT블로그", "자동화시스템", "티스토리운영", "AI포스팅", "이미지생성", "썸네일자동화"]

# 슬러그 생성 함수
def generate_slug(title):
    slug = title.lower()
    slug = re.sub(r"[^a-z0-9\\s-]", "", slug)  # 특수문자 제거
    slug = re.sub(r"[\\s]+", "-", slug)        # 공백 → 하이픈
    return slug.strip("-")

# 슬러그 생성
slug = generate_slug(title)

# 저장 경로
folder = f"./gpt_blog_auto_system"
os.makedirs(folder, exist_ok=True)

# 메타파일 작성
meta_path = os.path.join(folder, "meta.txt")
with open(meta_path, "w", encoding="utf-8") as f:
    f.write(f"slug: {slug}\n")
    f.write("tags: " + ", ".join(tags) + "\n")
    f.write(f"created_at: {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}\n")

print(f"[meta.txt] 저장 완료 → {meta_path}")

4) auto_generate_blog.sh 예시

🧩 auto_generate_blog.sh 예시

#!/bin/bash

# 1. 환경 준비
echo "📦 가상환경 실행 또는 설치 확인..."
source venv/bin/activate || python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt

# 2. GPT 블로그 콘텐츠 생성
echo "🧠 GPT 기반 블로그 콘텐츠 생성 중..."
python blog_auto_generator.py

# 3. 결과 확인
echo "📂 결과물 디렉토리:"
tree gpt_blog_auto_system/

# 4. 미리보기 Flask 서버 실행
echo "🌐 로컬 미리보기 UI 실행 중... http://localhost:5000"
python app.py

7. 자주 묻는 질문 (FAQ)

Q GPT가 생성한 글은 티스토리 애드센스 승인에 영향이 없나요?

자동 생성된 글이라도 고유한 콘텐츠이고 복붙이 아니면 승인에 문제가 없습니다. 단, 최소 800자 이상 + 이미지 포함을 권장합니다.

Q 생성된 이미지는 저작권 걱정 없나요?

GPT 또는 이미지 생성 AI가 생성한 콘텐츠는 대부분 상업적 사용이 가능하며, 사용자는 프롬프트 기준으로 독창적인 결과를 확보하게 됩니다.

Q 자동으로 생성된 slug는 수정할 수 있나요?

물론입니다. slug는 HTML 파일명이나 폴더명으로만 사용되며, 필요에 따라 수동 수정 가능합니다. 다만 연결된 링크도 함께 수정해야 합니다.

Q 자동화된 alt 텍스트는 어느 수준까지 세밀한가요?

GPT는 이미지 생성 프롬프트 기반으로 구체적인 설명을 자동 구성합니다. 예: “노트북 앞에서 글을 작성하는 20대 여성 블로거의 모습” 등 매우 정밀한 표현이 가능합니다.

Q 자동화 워크플로우는 윈도우에서도 실행 가능한가요?

예. 파이썬 기반 스크립트는 Mac, Windows, Linux 모두에서 작동 가능하며, VS Code 또는 터미널에서 간단히 실행할 수 있습니다.

8. 마무리 요약

✅ 블로그 자동화, 지금 시작하세요

티스토리 블로그 운영은 더 이상 수작업의 반복일 필요가 없습니다. GPT와 이미지 생성 AI를 활용하면, 포스팅 콘텐츠는 물론 시각자료, 폴더 구조, 뷰 설정까지 자동화할 수 있습니다. 이번 포스팅에서 소개한 구조와 도구들을 참고하신다면, 여러분의 블로그도 하루 만에 자동화 시스템으로 탈바꿈할 수 있습니다. 이제 글쓰기는 AI에게 맡기고, 여러분은 전략에만 집중해보세요. 오늘부터 실전 적용해보시고, 효율의 변화를 직접 느껴보시기 바랍니다!

반응형