답변:
HTTP에는 실제로 디렉토리 개념이 없습니다. 처음 세 개 ( http://example.com/
) 이외의 슬래시 ..
는 상대 URL 을 제외하고 특별한 의미가 없습니다 . 따라서 서버가 특정 형식을 따르지 않으면“지정된 디렉토리에있는 모든 파일을 다운로드”할 방법이 없습니다.
전체 사이트를 다운로드하려면 기본 페이지의 모든 링크를 재귀 적으로 탐색하는 것이 가장 좋습니다. 컬은 할 수 없지만 wget은 할 수 없습니다. 이것은 웹 사이트가 너무 동적이 아닌 경우 작동합니다 (특히 wget은 Javascript 코드로 구성된 링크를 보지 못합니다). 로 시작 wget -r http://example.com/
하여 wget 매뉴얼의“재귀 검색 옵션”및“재귀 수락 / 거부 옵션”에서 관련 옵션 (재귀 깊이, 제외 목록 등)을 확인하십시오.
웹 사이트에서 자동 다운로드를 차단하려는 경우 사용자 에이전트 문자열 ( -U Mozilla
) 을 변경하고 무시해야합니다 robots.txt
(빈 파일을 작성 example.com/robots.txt
하고 -nc
옵션을 사용하여 wget이 서버에서 다운로드하지 않도록하십시오).
-e robots=off
. 또는로 거부하여 다운로드하지 않도록 할 수 있습니다 -R "robots.txt"
.
불가능합니다. 웹 서버가 디렉토리의 내용을 사용자에게 반환 할 수있는 일반적인 방법은 없습니다. 대부분의 서버는 디렉토리의 HTML 색인을 생성하지만 (구성된 경우)이 출력은 표준이 아니며 어떠한 수단도 보장하지 않습니다. 이 HTML을 구문 분석 할 수 있지만 형식이 서버에서 서버로 변경되며 항상 활성화되지는 않습니다.
wget
또는 curl
?
여기에서 웹 사이트 리퍼를 사용하면 모든 것을 다운로드하고 로컬 사용을 위해 내용 / 내부 링크를 수정합니다. 좋은 것은 여기에서 찾을 수 있습니다 : http://www.httrack.com