완전히 로드하는 데 시간이 걸리는 URL이 있습니다. 하지만 컬을 사용하여 링크를 html로 다운로드하면 페이지가 완전히 로드되기 전에 html이 실시간으로 다운로드됩니다. 이는 JavaScript가 완전히 실행되었음을 의미합니다. 페이지가 완전히 로드될 때까지 컬을 중지하거나 1분 후에 페이지 다운로드를 시작하는 방법을 알려주세요.
답변1
curl
curl
JavaScript가 JavaScript를 이해하지 못하기 때문에 JavaScript가 해석될 때까지 "기다리지" 않습니다. JavaScript는 항상 클라이언트 측(일반적으로 JavaScript 엔진이 있거나 JavaScript 실행 방법을 알고 있는 브라우저)에서 수행됩니다.
따라서 curl
텍스트 블록으로 처리되어 그대로 유지됩니다.
이 동작은 curl
Linux 명령줄에만 고유한 것이 wget
아니며 nc
( lynx
및 기타)는 JavaScript를 이해하지 못합니다.
links
버그가 있는 JavaScript 지원(컴파일된 경우)이 있는 것 같지만 대화형 사용을 위한 텍스트 브라우저입니다.
스크립팅이 마음에 들지 않으면 살펴보십시오.PhantomJS
phantomJS는 JavaScript API를 사용하여 스크립트 가능한 헤드리스 WebKit입니다. DOM 처리, CSS 선택기, JSON, Canvas 및 SVG와 같은 다양한 웹 표준에 대한 빠르고 기본 지원을 제공합니다.