~/utility/web-printer
Universal Web Printer — URL·HTML을 PDF, 이미지로 변환
스마트 스크롤 스티칭, 요소 추출, PDF 암호화, 워터마킹까지 지원하며 모든 URL이나 HTML을 PDF, PNG, JPEG, WebP로 변환합니다.
미디어
>99% 성공률
TypeScriptPlaywrightPDF-libSharp
글로벌
카테고리utility / 미디어
언어TypeScript
스택TypeScript, Playwright, PDF-lib, Sharp
마켓글로벌
성공률>99%
출력클린한 RAG-레디 JSON
주요 기능
다중 포맷 출력 — PDF, PNG, JPEG, WebP
다양한 뷰 모드 — 뷰포트, 전체 페이지, CSS 셀렉터, 리더빌리티
정확한 전체 페이지 캡처를 위한 스마트 스크롤 스티칭
CSS 셀렉터를 통한 요소 단위 추출
페이지 조작 — 요소 제거, 버튼 클릭, CSS 주입, 고정 헤더 숨기기
PDF 암호화(RC4 128비트) 및 워터마킹
다중 페이지 문서를 위한 PDF 병합
커스텀 뷰포트 및 스케일 비율 설정
활용 사례
- 웹 대시보드로부터 자동 리포트 생성
- 웹사이트 아카이빙 및 문서화
- 비주얼 회귀 테스트 스냅샷
- 카탈로그용 이커머스 상품 페이지 스크린샷
- 법적 컴플라이언스 — 웹 콘텐츠를 증거로 캡처
- 웹 애플리케이션으로부터 PDF 생성
입력 파라미터
| 파라미터 | 타입 | 필수 | 설명 |
|---|---|---|---|
startUrls | array | 선택 | 렌더링할 URL |
htmlContent | string | 선택 | 렌더링할 원본 HTML |
outputFormat | string | 선택 | pdf, png, jpeg, webp 중 선택(기본값: pdf) |
viewMode | string | 선택 | viewport, fullPage, selector, readability 중 선택 |
targetSelector | string | 선택 | 요소 단위 캡처를 위한 CSS 셀렉터 |
viewportWidth | number | 선택 | 브라우저 뷰포트 너비(기본값: 1280) |
viewportHeight | number | 선택 | 브라우저 뷰포트 높이(기본값: 720) |
removeSelectors | array | 선택 | 캡처 전 제거할 요소의 CSS 셀렉터 |
pdfPassword | string | 선택 | RC4 128비트 암호화로 PDF 보호 |
출력 예시
도구는 선택한 포맷(PDF, PNG, JPEG, WebP)으로 파일을 생성해 Apify 데이터셋에 저장합니다. 각 출력에는 메타데이터가 포함됩니다:
1{
2 "url": "https://example.com",
3 "format": "pdf",
4 "fileName": "example-com.pdf",
5 "fileSize": 245832,
6 "viewMode": "fullPage",
7 "viewport": { "width": 1280, "height": 720 },
8 "encrypted": false
9}
자주 묻는 질문
페이지의 특정 요소만 캡처할 수 있나요?
네, targetSelector 파라미터에 CSS 셀렉터를 지정하면 특정 요소만 캡처할 수 있습니다. 예를 들어 '#main-content'를 사용하면 메인 콘텐츠 영역만 캡처됩니다.
스마트 스크롤 스티칭은 어떻게 동작하나요?
전체 페이지 캡처 시, 도구가 페이지를 일정 간격으로 스크롤하면서 각 뷰포트 조각을 캡처한 뒤 이어붙입니다. 이를 통해 지연 로딩되는 콘텐츠와 애니메이션도 제대로 캡처됩니다.
캡처 전에 쿠키 배너나 광고를 제거할 수 있나요?
네, removeSelectors로 제거할 요소의 CSS 셀렉터를 지정할 수 있습니다. hideFixedElements를 사용하면 고정 헤더와 플로팅 요소도 숨길 수 있습니다.