- 26~97쪽짜리 인뎁스 리포트 1,129개·6.3GB를 같은 도구로 처리했습니다. 앞 편 엔진을 복사하지 않고 «어디서 가져오나»만 갈아끼웠습니다 — 그래서 한쪽을 고치면 양쪽이 같이 좋아집니다.
- 「스캔한 PDF라 글자를 못 읽는다」고 몇 달을 믿었는데 틀렸습니다. 제 코드가 앞 네 쪽만 읽고 있었고, 두꺼운 리포트는 앞 네 쪽이 표지·목차입니다.
- 86쪽 문서에서 4,361자만 읽고 있었습니다 — 전문 120,000자의 3.6%입니다. 「전 페이지를 읽어라」 한 줄로 고쳤고, 스캔으로 분류했던 155건 중 절반이 정상 문서로 돌아왔습니다.
- PDF가 1,000개를 넘으면 눈으로 못 찾습니다. 파일 이름의 낱말로 갈래를 나눠 폴더로 옮기고, 기준을 고치면 이미 쌓인 것도 다시 분류합니다 — 옮기기 전에 «무엇을 어디로»를 먼저 보여줍니다.
앞 편에서 만든 도구를 다른 자료에 붙였습니다. 이번 상대는 인뎁스 리포트입니다. 한 편이 26쪽에서 97쪽까지 가는 두꺼운 산업 분석 자료입니다.
지금 1,129개, 6.3GB가 쌓여 있습니다. 여기서 제가 몇 달을 잘못 알고 있던 것을 하나 발견했습니다.
엔진은 새로 만들지 않았습니다
가장 먼저 한 결정입니다. 앞 편의 도구를 복사해서 고치지 않았습니다.
앞 편 도구는 다섯 단계였습니다 — 수집 · 정독 · 작성 · HTML · 발송. 이 중 바뀌어야 하는 건 「수집」 하나뿐이었습니다. 자료가 어디서 오느냐만 다르고, 읽고 요약하고 꾸며서 보내는 일은 똑같습니다.
이렇게 하면 앞 편에서 고친 것이 이쪽에도 자동으로 적용됩니다. 요약 오류를 막는 지시문을 손보면 두 곳이 같이 좋아집니다. 복사해뒀다면 한쪽만 고치고 다른 쪽은 옛날 상태로 남았을 겁니다.
실제로 앞 편 문서에 "①만 바꾸면 다른 자료에도 쓸 수 있다"고 적어뒀는데, 그 설계가 처음으로 값을 했습니다.
「스캔한 PDF라 못 읽는다」고 믿고 있었습니다
붙이고 나니 이상했습니다. 요약이 자꾸 부실했습니다. 97쪽짜리 산업 분석인데 나오는 요약이 짧고 알맹이가 없습니다.
그리고 155건은 아예 글자가 안 잡혔습니다. 저는 "이건 스캔한 이미지 PDF구나, 글자가 없으니 어쩔 수 없다"고 결론 내렸습니다. 그럴듯했습니다.

둘 다 틀렸습니다. 원인은 하나였습니다. 글자를 뽑는 부분이 앞 네 쪽만 읽고 있었습니다.
앞 편에서 다루던 리포트는 몇 쪽짜리라 네 쪽이면 충분했습니다. 그 코드를 그대로 가져다 97쪽짜리에 쓴 것입니다. 실제로 재보니 이랬습니다.
| 문서 | 읽고 있던 양 | 실제 전문 |
|---|---|---|
| 38쪽 | 4,009자 | 59,922자 (7%) |
| 78쪽 | 2,959자 | 119,945자 (2.5%) |
| 86쪽 | 4,361자 | 120,000자 (3.6%) |
그리고 「스캔이라 못 읽는다」던 155건 중 절반은 스캔이 아니었습니다. 두꺼운 리포트는 앞 네 쪽이 표지·목차·면책 문구입니다. 거기엔 뽑을 글자가 거의 없습니다. 그래서 「글자 없음 = 스캔 문서」로 잘못 판정한 것입니다.
고친 건 「전 페이지를 읽어라」 한 줄입니다. 스캔 여부를 판정하는 기준도 전문 기준으로 바꿨습니다. 그러자 요약이 살아났고, 155건 중 절반이 정상 문서로 돌아왔습니다.
파일이 쌓이면 찾을 수가 없습니다
다음 문제는 정리였습니다. PDF가 매일 몇 개씩 들어오는데 한 폴더에 쌓이니 1,000개가 넘어가면서 눈으로 못 찾게 됐습니다.

그래서 파일 이름을 보고 갈래를 나눠 폴더로 옮기는 것을 만들었습니다. 파일명에 들어 있는 낱말로 판단합니다 — 반도체·데이터센터 계열인지, 통신·우주 계열인지, 전력·2차전지 계열인지 같은 식입니다.
완벽하진 않습니다. 파일 이름이 애매하면 엉뚱한 데로 갑니다. 그래서 두 가지를 같이 넣었습니다.
① 기준을 고치면 이미 쌓인 것도 다시 분류합니다. 낱말 목록을 손봤는데 새 파일만 적용되면, 폴더 안에 옛 기준과 새 기준이 섞입니다. 그러면 나중에 어느 규칙으로 들어간 건지 알 수 없게 됩니다.
② 옮기기 전에 무엇을 어디로 옮길지 먼저 보여줍니다. 1,000개가 넘는 파일을 한 번에 움직이는 일이라, 잘못 짠 규칙 하나가 전부를 헝클 수 있습니다. 목록을 눈으로 확인하고 나서 실행합니다.
정리하면
이번 편의 교훈은 하나로 모입니다. 「안 되는 이유」를 스스로 만들어내지 말 것.
저는 「스캔본이라 안 된다」고 결론 내리고 몇 달을 그대로 뒀습니다. 실제로는 제 코드가 네 쪽만 읽고 있었을 뿐이고, 고치는 데는 한 줄이 들었습니다.
돌아보면 확인하지 않고 넘어간 지점이 정확히 거기였습니다. "글자가 안 잡힌다 → 스캔이겠지"에서 멈췄고, "정말 스캔인가"를 안 물었습니다. 파일 하나만 열어봤어도 표지라는 걸 알았을 겁니다.
다음 편은 장마감 시황 브리핑입니다. 거기서는 반대로, 막아둔 장치가 제 손으로 무너진 이야기를 적겠습니다.
'AI 코딩 > 클로드 코드' 카테고리의 다른 글
| AI 자동 발송에 검증을 붙이는 법 — 휴장일에 빈 브리핑이 나간 뒤 (0) | 2026.08.22 |
|---|---|
| AI 요약이 숫자를 틀리는 세 가지 자리 — 증권사 리포트 1,837건을 정독시키며 찾은 것 (0) | 2026.08.22 |
| 블루투스가 끊긴 범인은 CPU가 아니라 메모리였습니다 — 클로드 코드용 PC 사양 (0) | 2026.08.22 |
| 그록·제미나이로 코딩하다 클로드 코드로 온 이유 — 붙여넣기도 편집기 설치도 없었습니다 (0) | 2026.08.21 |
| 파이썬을 더블클릭으로 실행하기 — 메모장으로 배치파일(.bat) 만드는 법 (1) | 2026.08.21 |