Sangtacviet Batch Downloader v2_ultrafast_fix2
Sangtacviet Batch Downloader v2_ultrafast_fix2
지적해주신 폴더/파일명 길이 제한 추가 + 그럴 일은 없겠지만, 파일 이름으로 사용할 수 없는 문자(MS-DOS 시절의 예약어 등) 제한을 GPT의 도움을 받아서 추가했습니다.
그 외의 개선 사항은 없으며, 사용방법 또한 이전과 완전히 동일하지만, 테스트를 안 해봐서 제대로 작동하는지는 모르겠네요.
사실 이런 식으로 목차 페이지가 아닌, 해당 회차 내에 소제목이 있어야 할 공간에 소제목이 없고 비어있는 경우, 실제 회차수와 소제목을 가져오는 게 아닌, 火影:从打造天才人设开始_제70화.txt 이런 식으로 저장해버리는 문제가 있는 것도 알고는 있는데, 그렇게 잦은 경우가 아니라서 일단은 내버려둡니다.
aHR0cHM6Ly9raW8uYWMvYy9iZUJKMFFoVDlUUXBmXzhVUHJjUWFi
1달 국룰
⚙️ 시스템 요구사항
필수 환경
OS: Windows 10 / 11
Browser: Google Chrome
Python: Python 3.8 이상
Chrome 원격 디버깅: 포트
9222
Python 패키지
bash
pip install flask flask-cors beautifulsoup4 DrissionPage pydub SpeechRecognition
추가 사항
pydub의 오디오 처리 기능을 사용하므로 시스템 환경에 따라 오디오 디코딩에 필요한 외부 도구를 별도로 준비해야 할 수 있습니다.
winsound를 사용하는 알림 기능이 포함되어 있기 때문에 현재 버전은 Windows 환경을 기준으로 합니다.
🛠️ 설치 방법
1. Python 설치
Python 3.8 이상을 설치합니다.
설치 후 다음 명령으로 확인할 수 있습니다.
bash
python --version
2. 필수 패키지 설치
bash
pip install flask flask-cors beautifulsoup4 DrissionPage pydub SpeechRecognition
3. FFmpeg 설치
FFmpeg를 별도로 설치해야 합니다.
FFmpeg는 Google ReCAPTCHA 오디오 처리 과정에서 MP3 등의 오디오 파일을 WAV로 변환할 때 사용됩니다.
bash
winget install Gyan.FFmpeg4. Tampermonkey 스크립트 설치
크롬에 Tampermonkey 확장프로그램을 설치합니다.
Tampermonkey 대시보드에서
새 스크립트 만들기를 클릭합니다.제공된
// ==UserScript==로 시작하는 자바스크립트 코드를 붙여넣고 저장(Ctrl+S)합니다.
( chrome://extensions/에서 개발자 모드 및 Tampermonkey 세부정보에서 사용자 스크립트 허용 필수)
※ tampermonkey 스크립트 Sangtacviet Batch Downloader (Unified Browser + Python).js는, 이전 버전과 완전히 동일함.
5. Chrome 원격 디버깅 모드 설정
실행 중인 Chrome을 완전히 종료한 뒤 다음과 같이 실행합니다.
bash
chrome.exe --remote-debugging-port=9222
Chrome 바로가기의 대상(Target) 끝에 다음을 추가해두면 편리합니다.
text
--remote-debugging-port=9222
예:
text
"C:\Program Files\Google\Chrome\Application\chrome.exe" --remote-debugging-port=9222
💻 사용 방법
1. Chrome 실행
원격 디버깅 모드로 Chrome을 실행합니다.
2. Python 서버 실행
bash
python "Sangtacviet_Batch_Downloader_v2_UltraFast_fix2.py"
정상 실행 시 다음과 같은 메시지가 표시됩니다.
text
✅ 서버 준비 완료! 포트 15000
3. 다운로드 작업 요청 (Tampermonkey 스크립트 활용)
디버깅 모드로 켜진 크롬에서 쌀국수 사이트의 다운로드 받을 소설 목차 페이지에 접속합니다.
상단에 추가된 컨트롤 바에서 다운로드할 화를 선택(
사이 선택등 활용)합니다.🟡 [🐍 파이썬 봇으로 전송] 버튼을 클릭합니다.
📁 저장 구조
프로그램이 실행되는 폴더를 기준으로 다음과 같은 구조가 만들어집니다.
text
Sangtacviet_Batch_Downloader_v2.py
novel_cache.json
completed_chapters.json
└─ 소설 제목/
├─ 소설 제목_회차 제목 1.txt
├─ 소설 제목_회차 제목 2.txt
├─ 소설 제목_회차 제목 3.txt
├─ download_report_success_2026-08-12_20-15-30.txt
└─ ...
캐시와 완료 내역은 프로그램 폴더에 별도로 저장됩니다.
🔁 여러 소설을 연속으로 처리하는 경우
v2는 소설별로 캐시와 완료 내역을 유지합니다.
예:
text
A소설
↓
A|123
A|124
A|125
B소설
↓
B|123
B|124
다시 A소설
↓
A|123 → 이미 완료 → 스킵
A|124 → 이미 완료 → 스킵
A|125 → 이미 완료 → 스킵
소설이 변경되어도 이전 소설의 캐시가 삭제되지 않으며, 소설 URL과 Chapter ID를 조합하여 각각 독립적으로 관리합니다.
🚨 주의사항
다운로드 작업 중 연결된 Chrome 창이나 현재 작업 탭을 임의로 닫거나 변경하지 않는 것을 권장합니다.
장시간 작업에서는 사이트 응답 속도와 외부 서비스 상태에 따라 전체 처리 시간이 크게 달라질 수 있습니다.
CAPTCHA가 발생하는 경우 자동 처리 여부와 처리 시간은 상황에 따라 달라질 수 있습니다.
자동 처리할 수 없는 인증이 발생하면 사용자의 수동 처리가 필요할 수 있습니다.
novel_cache.json과completed_chapters.json은 이어받기 및 중복 다운로드 방지에 사용되므로 정상적인 작업 중에는 삭제하지 않는 것이 좋습니다.동일한 소설을 다시 다운로드하더라도 기존 파일과 완료 내역이 있으면 해당 회차는 가능한 한 재다운로드하지 않고 스킵합니다.
Google ReCAPTCHA해제 기능은 작동하지 않을 수 있습니다.
s/ainovel
• 7,083 subscribers- 1. ※번역 요청 규칙※
본문에 원문 또는 후기 혹은 원문과 후기 둘 다 포함 필수. ex. [후기] 검도지로 1~2340 완; 또는 [원문/후기] 검도지로 1~2340 완 그 외 번역 요청은 이 글이 아닌 번역 요청 공지글에 댓글로 작성해주세요. 타 사이트의 자료 요청 금지. ※요청 규칙 미숙지시 7일 차단※
- 2. ※복구 요청 규칙※
원글 링크를 붙여주세요. 복구 자료는 복구 요청글의 링크를 첨부해주세요. 복구 요청은 공유할때까지 도배하지말고 기다려주세요. ※요청 규칙 미숙지시 7일 차단※
- 3. 욕설 및 비속어 금지
욕설, 비하, 혐오, 성적인 발언, 정치적 조롱 등은 일절 금지합니다. 상대를 직접적으로 공격하거나 조롱하는 행위는 즉시 제재 대상이 됩니다.
- 4. 분쟁 자제
의견 충돌이 발생하더라도 인신공격 없이 논리적인 대화 로 해결하도록 합니다. 지속적으로 분쟁을 유발하는 행위는 경고 또는 차단 조치의 대상이 됩니다.
- 5. 게시글 및 댓글 작성 기준
허위정보, 루머, 도배, 낚시성 게시물 은 삭제될 수 있습니다. 컨텐츠 관련 비판은 허용하되, 사람을 향한 비난은 허용되지 않습니다.
- 6. 공유 링크는 base64로 암호화 필수 (즉 본문 링크는 base64로 복호화 필요)
※연재처의 링크는 암호화 대상에서 제외합니다※
- 7. 닉네임 언급 및 친목 금지.