전체 웹사이트를 다운로드하고 싶지만, 종료하고 싶다면 작업을 재개할 수도 있습니다. 내 문제는 명령을 두 번째로 실행할 때 이전에 생성한 하위 폴더로 이동하지 않는다는 것입니다. 해당 옵션 도
시도했지만 동일한 오류가 발생하여 이제 다음과 같은 명령을 사용하고 있습니다.--mirror
--no-clobber
wget --recursive -l inf --no-clobber --page-requisites --no-parent --domains xxx https://xxx/
특히 이것은 내가 얻은 예입니다.
--2021-01-09 15:46:11-- https://domain/subfolder/
Reusing existing connection to domain:443.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [text/html]
domain/subfolder: Is a directory
Cannot write to ‘domain/subfolder’ (Success).
두 번째로 실행했을 때 명령이 매우 빠르게 중지되어 디렉터리 내의 파일에 대한 모든 검사를 건너뛰었습니다.
이전 작업에서 생성한 폴더를 확인하는 솔루션이 있습니까 wget
?
답변1
오늘 나는 문제가 재귀 또는 연속 옵션이 아니라 301 응답이 반환되었다는 것을 이해했습니다. 처음에는 왜 그랬는지 아직도 이해가 안 되지만 이제는 모든 것이 잘 작동합니다. 작업을 중지하고 다시 시작할 수 있으며, 각 파일을 확인한 후 wget은 새 콘텐츠를 다운로드하거나 이전 다운로드를 계속합니다. 늘 그렇듯, 같은 문제가 있으신 분은 여기 링크로 https://lists.gnu.org/archive/html/bug-wget/2019-11/msg00036.html
누군가에게 도움이 될 수 있다면 지금 사용하고 있는 명령은 wget -r --mirror -N -l inf --no-parent -R --trust-server-names --content-disposition --continue --입니다. 도메인 사이트 https://website
이전 질문에서 보고 읽은 것처럼 다음 리디렉션을 허용하는 옵션은 --trust-server-names입니다. 그런 다음 --content-disposition을 결합하면 모든 것이 잘 작동합니다.
모두의 도움에 감사드립니다
답변2
당신이 찾고 있는 것은 기존 파일보다 최신 파일만 검색하는 옵션 --timestamping
( 간단히 말하면)입니다.-N
참고로 제가 실제로 가끔 사용하는 명령은 다음과 같습니다.
wget -c -N -mirror -pc --convert-links -P ./mirror $SITE_URL