블로그 자동화

소개

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

->지난 주에 이어 블로그 자동화를 시도해서 두 권의 책을 엮어 인사이트가 담긴 칼럼을 작성하는 것이 목표입니다.

진행 방법

어떤 도구를 사용했고, 어떻게 활용하셨나요?
->ChatGPT, Perplexlty, Claude, 앱스스크립트

Tip: 사용한 프롬프트 전문을 꼭 포함하고, 내용을 짧게 소개해 주세요.

프롬프트1.
구글스프레드시트 시트1에 A1에는 책제목, B1에는 체크박스, C1에는 요약 문장 1번부터 5번까지 있어. D1에 C1의 1번에 대해서 2000자 분량의 블로그 글을 쓰는 앱스크립트 작성해줘

프롬프트2.
구글 스프레드시트 A1 시트가 있어. A열에는 책의 제목, B열에는 체크박스, C열에는 책에 대한 요약 글이 각각의 책마다 5개씩 있어. D열에다 체크가 되어 있는 항목에 대해서만 2000자 분량의 블로그 글을 작성하는 코드 만들어줘

프롴프트3.
D열의 글을 엮어 한 편의 블로그 형식의 콘텐츠를 발행할거야. 너느 10년 이상의 경력이 있는 파워블로거야. 독자가 글을 읽을 때 최대한 자연스럽게 이어지도록 써줘. 각 항목의 반복되는 문장은 삭제하고, 최대한 문맥에 맞도록 작성해줘. 완성된 블로그를 E열의 체크된 첫번째 행에 작성하는 코드 만들어줘. 단, 체크된 D열의 글에 대해서만이야.

프롬프트4.
그럼, 이제는 두 권의 책의 내용을 체크된 D열의 글을 토대로 엮어 칼럼을 발행할거야. 너는 신문에 주기적으로 기고하는 전문 칼럼리스트야. 간결하게 독자들에게 인상 깊은 메세지를 전할 수 있는 칼럼을 작성해줘. 15000자 이상의 분량으로 써줘. 작성된 글은 체크된 F열의 마지막 행에 작성해줘. 이에 맞는 코드 작성해줘.

프롬프트5.
그럼, 이제는 A열의 모든 책의 내용을 체크된 D열의 글을 토대로 엮어 칼럼을 발행할거야. 너는 신문에 주기적으로 기고하는 전문 칼럼리스트야. 간결하게 독자들에게 인상 깊은 메세지를 전할 수 있는 칼럼을 작성해줘. 15000자 이상의 분량으로 써줘. F열에 작성시 코드 형식은 배제하고 텍스트 형태로만 보여줘. 작성된 글은 체크된 F열의 마지막 행에 작성해줘. 이에 맞는 앱스크립트 코드 작성해줘.

->자연스러운 언어 구사를 위해 ChatGPT의 결과물을 Claude에 업로드 하고 아래와 같은 프롬프트 입력.

프롬프트6.
첨부하는 내용을 독자들이 읽을 때 자연스럽게 느낄 수 있게 문맥에 맞게 바꿔줘

프롬프트7.
너는 주기적으로 기고하는 10년차 칼럼리스트야. 요약이 아닌 15000자 분량의 칼럼을 작성해줘

Tip: 활용 이미지나 캡처 화면을 꼭 남겨주세요.

한국어 기사 스크린샷
한국어 페이지 스크린샷

Tip: 코드 전문은 코드블록에 감싸서 작성해주세요. ( / 을 눌러 '코드 블록'을 선택)
function compileFullColumnContent() {

// 스프레드시트와 시트를 가져오기

const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("A1"); // "A1" 시트 이름

const lastRow = sheet.getLastRow(); // 마지막 행 가져오기

// 필요한 열 데이터 가져오기

const checkboxes = sheet.getRange(1, 2, lastRow, 1).getValues(); // B열 (체크박스)

const blogContents = sheet.getRange(1, 4, lastRow, 1).getValues(); // D열 (블로그 글)

let columnContent = ""; // 최종 칼럼 콘텐츠 저장 변수

let targetRow = null; // F열에 작성할 마지막 체크된 행

for (let i = 0; i < lastRow; i++) {

if (checkboxes[i][0]) { // 체크박스가 true인 경우

targetRow = i + 1; // F열에 작성할 마지막 체크된 행 갱신

const content = blogContents[i][0];

// 중복 문장 제거하고 자연스럽게 연결하기

const processedContent = content

.replace(/<h1>.*?<\/h1>/g, "") // H1 태그 제거

.replace(/<p>(.*?)<\/p>/g, "$1\n") // P 태그를 단락으로 변환

.replace(/<ol>.*?<\/ol>/gs, "") // 목록 제거

.replace(/<ul>.*?<\/ul>/gs, "") // 불필요한 HTML 태그 제거

.trim();

columnContent += processedContent + "\n\n"; // 콘텐츠 추가

}

}

// 칼럼 스타일로 작성

const columnHeader = "삶의 다양한 책들: 우리가 배우는 것들\n\n";

const columnFooter = "\n\n독서와 성찰의 순간에서\n- 전문 칼럼리스트";

const finalColumn = columnHeader + columnContent.trim() + columnFooter;

// 최종 칼럼을 F열의 마지막 체크된 행에 작성

if (targetRow !== null) {

sheet.getRange(targetRow, 6).setValue(finalColumn);

SpreadsheetApp.getUi().alert("F열의 마지막 체크된 행에 칼럼이 작성되었습니다.");

} else {

SpreadsheetApp.getUi().alert("체크된 항목이 없습니다.");

}

}

(내용 입력)

결과와 배운 점

배운 점과 나만의 꿀팁을 알려주세요.

->사실 앱스스크립트에서 코드를 실행시켰을 때 계속 시트가 없다고 나오는 것을 4일 정도 무한반복했습니다. 오늘은 사례 디데이라서 오늘도 그러면 포기각이다 했는데 오늘 아침에는 실행 후 뜨는 오류메세지를 붙혀 넣고 물으니 다른 때와 달리 스프레드시트의 하단의 이름까지 일치해야 한다는 이야기를 해주어서 그 후로는 제가 의도한대로 진행이 되었습니다.
그리고,최종적으로 얻고 싶은 결과를 얻기 전까지는 글의 형식을 프롬프트에 넣는 것은 비효율적이라는 것을 알게 되었습니다.
또한, 프롬프트는 단계별로 매우 세세하고 정확하게 입력해야한다는 것을 알게 되었습니다.

그리고, 13기 스타트업 실험실 스터디 중 클로드가 자연어 처리를 잘한다는 이야기가 떠올라 최종적인 칼럼은 클로드에서 완성시켰습니다(이 부분도 제가 잘 이해한건지 아직 모릅니다ㅜㅜ) 하지만 쳇지피티보다 클로드의 칼럼의 완성도가 월등히 높아서 만족했습니다. 쳇지피티는 생각보다 자연스럽고 문맥에 맞는 글은 못 쓰더라구요.

실패담도 괜찮아요. 시행착오나 도움이 필요한 부분이 있나요?

->급한 마음에 클로드에서 최종적인 칼럼(자연스럽고 문맥이 맞는) 작성시 코드를 안 만들고, 쳇지피티의 글을 업로드해서 프롬프트를 입력하고 만족스러운 결과물을 얻었습니다.이런 걸 입코딩이라고 하는건지도 궁금하네요...

앞으로의 계획이 있다면 들려주세요.

->클로드에서 얻은 최종 결과물 레벨의 글이 작성되는 블로그 자동화 스프레드시트를 완성시키고 싶습니다.

(내용 입력)

도움 받은 글 (옵션)

참고한 지피터스 글이나 외부 사례를 알려주세요.

->AJ님의구글 스프레드 시트-> 블로그 자동화 해보기.
https://youtu.be/dod8UbOarJ4?si=kNIQJtBYutrUhr-B

#13기 스타트업 실험실 #13기 스타트업실험실

1
3개의 답글

👉 이 게시글도 읽어보세요