Thare — Threads 스하리 자동화 데스크톱 앱 개발기
Threads에서 '스하리'(스레드 하트+리포스트+팔로우+답글)는 서로 성장을 돕는 문화입니다. Thare는 키워드 검색으로 게시글을 찾아 자동으로 스하리를 수행하는 데스크톱 앱입니다.
Threads에서 '스하리'(스레드 하트+리포스트+팔로우+답글)는 서로 성장을 돕는 문화입니다. 하지만 하나하나 수동으로 하기엔 시간이 너무 많이 듭니다.
Thare는 키워드 검색으로 게시글을 찾아 자동으로 스하리를 수행하는 데스크톱 앱입니다.
주요 기능
스하리 자동화
팔로우 + 하트 + 답글 + 리포스트 자동 실행
키워드 검색으로 대상 게시글 탐색
키워드별 독립 처리
차단 방지
가중치 기반 랜덤 딜레이 (게시물 간 15~120초, 액션 간 3~25초)
CAPTCHA 감지 시 자동 일시정지 및 사용자 알림
자연스러운 사용 패턴 유지
안정성
progress.json에 진행 상태 저장
크래시 후 이어서 진행 가능
모던 다크 테마 UI (PySide6)
Mac/Windows 크로스 플랫폼 지원
기술 스택
Language: Python
UI: PySide6 (Qt)
Browser: Playwright
Build: Nuitka (네이티브 바이너리)
Storage: JSON 파일 (settings/stats/progress)
개발 과정
가장 중요했던 건 차단 방지 설계입니다. Threads는 봇 활동을 감지하면 바로 제한을 걸기 때문에, 가중치 기반 랜덤 딜레이로 사람처럼 보이는 패턴을 만들었습니다. 15~120초의 넓은 범위에서 딜레이를 주고, 액션 간에도 3~25초의 간격을 뒀습니다.
두 번째 과제는 크로스 플랫폼 빌드였습니다. PySide6(Qt)와 Playwright를 함께 Nuitka로 네이티브 바이너리로 빌드하는 과정에서 의존성 관리가 까다로웠지만, Mac과 Windows 모두에서 안정적으로 동작하도록 구현했습니다.
세 번째는 진행 상태 관리입니다. 수백 개의 게시글을 처리하다 크래시가 나더라도 정확히 이어서 할 수 있도록 progress.json에 매 액션마다 상태를 저장합니다.
회고
1. 자동화 프로그램에서 가장 중요한 건 '자연스러움'입니다 — 기계적인 패턴은 금방 감지됩니다
2. PySide6는 Python GUI 개발에 훌륭한 선택입니다 — 네이티브 수준의 UI와 풍부한 위젯을 제공합니다
3. Nuitka 빌드는 PyInstaller보다 빠르고 안정적이지만, 설정에 공을 들여야 합니다
Thare의 전체 구조와 스크린샷은 포트폴리오 상세 페이지에서 확인할 수 있습니다.
이 프로젝트는 CodeLune에서 개발했습니다.
자동화 프로그램, 데스크톱 앱 개발이 필요하시다면 편하게 문의해주세요.