매일 같은 시각에, 사람이 아무것도 안 눌러도 글과 영상이 나가게 만드는 순서입니다. 윈도우 PC 한 대로 돌리는 기준이고, 실제로 돌리면서 깨진 곳을 그대로 적었습니다.
"매일 아침에 돌리자"는 지켜지지 않습니다. 작업 스케줄러에 걸어두면 지켜집니다.
윈도우는 schtasks, 맥·리눅스는 cron 입니다.
schtasks /create /tn "MYJOB\daily" ^
/tr "\경로\pythonw.exe \경로\job.py" ^
/sc daily /st 07:50 /f
python.exe 를 그대로 걸면 실행할 때마다 검은 창이 뜹니다.
화면을 쓰는 사람이 있으면 이것만으로도 못 씁니다 — pythonw.exe 로 거세요.
둘, 자동 로그온을 안 켜두면 재부팅 뒤 아무 작업도 안 돕니다. 스케줄은 멀쩡히
등록돼 있는데 실행 횟수만 0 입니다. 아무도 안 알려줍니다.실패에 대비해 재시도를 걸어두면, 아침에 성공한 날에도 오후에 또 올라갑니다. 재시도는 없을 때만 치는 것이라야 재시도입니다.
이미 오늘치가 발행 기록에 있으면 그냥 종료한다
→ 기록 파일에 (날짜, 슬롯) 을 남기고 시작할 때 대조
하루 두 번 올릴 계획이라면 "하루 한 편"으로 막으면 안 됩니다. 저녁 편이 영영 안 나갑니다. 슬롯 단위로 세세요.
무인화에서 제일 위험한 건 안 도는 게 아니라 이상한 게 나가는 것입니다. 사람이 보던 자리에 기계 관문을 두세요. 하나라도 걸리면 발행하지 않습니다.
| 검사 | 왜 |
|---|---|
| 해상도·길이·용량 | 규격을 벗어나면 업로드가 조용히 실패 |
| 오디오 중역(300Hz~4kHz) 비중 | 폰 스피커에서 안 들리는 음악을 만든 적이 있음 |
| 금지 문자열 | 자막·설명에 내부 경로나 계정이 섞여 나갈 수 있음 |
| 같은 소재 재사용 | 기록과 대조. 안 하면 며칠 뒤 같은 걸 또 올림 |
| 소재 나이 | 낡은 소재가 반복되면 반응이 안 옴 (아래 5번) |
이 목록은 사고가 날 때마다 한 줄씩 늘리는 것이지, 처음부터 다 알 수 없습니다. 겪은 사고를 지침에 적으면 잊고, 검사에 적으면 안 잊습니다.
대시보드나 결과 화면을 영상에 넣고 싶을 때, 브라우저를 띄워 화면녹화를 하면 녹화 내내 그 창이 맨 앞에 있어야 합니다. 사람이 쓰는 PC 라면 못 씁니다.
chrome --headless=new --hide-scrollbars ^
--virtual-time-budget=10000 --window-size=620,1400 ^
--screenshot=out.png "URL"
gdigrab -i title= 로 찍으면
GPU 합성 때문에 검은 화면만 나옵니다.
그리고 헤드리스 스크린샷은 스크롤 위치를 따라가지 않습니다 — 해시(#id)도
scrollIntoView 도 안 먹습니다. 늘 맨 위만 찍힙니다.자기 페이지라면 답이 간단합니다. ?only=섹션id 같은 파라미터를 만들어
그 섹션만 남기고 찍으세요. 스크롤에 기대지 않으니 날마다 같은 그림이 나옵니다.
실제로 그렇게 두 편을 냈고, 들어간 소재 8건의 중앙값이 155일(다섯 달)이었습니다. 후보 목록에 30일 이내가 16건이나 있었는데 한 번도 안 뽑혔습니다. 순위를 하루당 조회수로 바꾸니 중앙값이 39일로 내려왔습니다.
heat = 조회수 / (업로드 후 지난 일수 + 14)
975,000뷰 / 169일 → 5,300/일
750,000뷰 / 43일 → 13,200/일 ← 이쪽이 위로 온다
+14 는 갓 올라온 영상이 분모가 0 에 가까워 폭발하는 걸 막는 완충값입니다. 그리고 정렬만 고치면 소재가 마를 때 다시 늙은 걸 꺼내니, 검수에 나이 관문도 같이 두세요.
실측 파일에서 읽어서 박으세요. 손으로 적으면 이런 게 납니다.
| 적은 것 | 실제 |
|---|---|
| "이번 달 수익 14,556원" | 14,556원은 누적. 30일은 2,430원이었음 |
| "오늘 11개 발행" | 블로그의 "오늘 11"은 글 수가 아니라 방문자 수 |
둘 다 발행 직전에 잡았습니다. 숫자를 코드가 읽어오게 두면 애초에 안 생깁니다. 그리고 화면에 실제로 보이는 값만 자막에 쓰세요. 화면은 A 를 보여주는데 자막이 B 를 말하면 보는 사람이 먼저 압니다.
편마다 같은 곡이 깔립니다. 시리즈가 아니라 복붙으로 보입니다. 곡 목록을 두고 최근 N편에 쓴 곡을 빼고 고르게 하세요.
파일이 있다고 쓸 수 있는 곡이 아닙니다. 받아둔 10곡 중 절반이 호러·드론 계열이었습니다 (수집 검색어를 dark, suspense, ambient 로 짠 결과였습니다). 재서 거르세요.
| 지표 | 탈락선 | 이유 |
|---|---|---|
| 중역(300Hz~4kHz) 비중 | 30% 미만 | 폰 스피커에서 안 들림 |
| 0.5초 창 라우드니스 표준편차 | 7dB 초과 | 낭독을 덮었다 말았다 함 |
| 스펙트럴 센트로이드 | 900Hz 미만 | 웅웅대는 드론 — 공포물처럼 들림 |
자를 시작점도 곡 길이를 보고 정하세요. "38초 지점부터"로 박아두면 22~40초짜리 무료 음원에서 무음이 나갑니다.
지표를 모으는 층까지만 만들어두면, 매일 숫자만 쌓이고 규격은 처음 그대로 있습니다. 재는 값이 집행까지 닿아야 합니다.
측정 → 판정 → 집행 → 검증
판정: 기준선을 숫자로 정해둔다 (예: 편당 팔로워 75)
집행: 기준 미달이면 무엇을 바꿀지도 코드에 있어야 한다
검증: 바꾼 것에 기대값과 기한을 같이 적는다.
기대값 없는 변경은 실험이 아니라 그냥 손댄 것이다
남의 성공담이 아니라 진행 중인 실패까지 적는 게 이 기록의 취지라, 현재 상태도 적습니다.
| 편 | 도달 | 저장·공유 |
|---|---|---|
| 1화 (큐레이션) | 152 | 0 |
| 2화 (큐레이션) | 94 | 0 |
| 3화 (화면녹화 전환) | 측정 중 | 측정 중 |
두 편 연속 저장·공유가 0 이어서 포맷을 바꿨습니다. 30편까지 가서 편당 팔로워를 직접 재고, 기준에 못 미치면 이 포맷도 버립니다. 그 결과도 여기 적겠습니다.