피드로 돌아가기
How to Automate Publishing to CSDN and WeChat MP Using Playwright (When APIs Fail)
Dev.toDev.to
DevOps

API 중단 대응을 위한 Playwright 기반 브라우저 자동화 및 상태 유지 설계

How to Automate Publishing to CSDN and WeChat MP Using Playwright (When APIs Fail)

quarktimes2026년 6월 15일5intermediate

Context

CSDN의 Open API 서비스 중단으로 인한 외부 게시 파이프라인 마비 상황 발생. 기존 API 방식의 404/403 에러 해결 및 WeChat MP와 같은 API 미제공 플랫폼으로의 확장 필요성 대두.

Technical Solution

  • API 대체 수단으로 Playwright를 채택하여 Headless Chromium 기반의 사용자 행위 시뮬레이션 구현
  • storage_state 기능을 통한 세션 쿠키 직렬화 및 로컬 캐싱으로 반복적인 QR 로그인 절차 제거
  • Vue/React 기반 Dynamic Editor의 상태 업데이트 문제를 해결하기 위해 page.evaluate를 통한 innerHTML 주입 및 input Event 강제 발생 설계
  • 플랫폼별 Publisher 클래스와 셀렉터를 YAML 설정 파일로 분리하여 핵심 로직 수정 없는 확장 구조 확보
  • Claude Code 버전 업데이트에 따른 로그 경로 변경 문제를 해결하기 위해 버전 감지 기반의 어댑터 패턴 적용

1. API 미제공 플랫폼 자동화 시 `storage_state`를 활용한 세션 캐싱 전략 검토

2. 프레임워크 기반 에디터 조작 시 단순 `fill()` 대신 `evaluate()`와 Event Dispatch 조합 사용

3. 외부 도구 의존성 제거를 위해 설정 정보(Selector, Endpoint)를 YAML 등 외부 설정 파일로 추상화

원문 읽기