--convert-links가 지정된 경우 wget이 URL을 올바르게 변환할 수 없습니다.

--convert-links가 지정된 경우 wget이 URL을 올바르게 변환할 수 없습니다.

매뉴얼 페이지에 따르면 --convert-linkswget을 지정할 때:

다운로드가 완료되면 문서의 링크가 로컬 보기에 적합하도록 변환됩니다. [...] Wget은 다운로드가 완료될 때까지 어떤 링크가 다운로드되었는지 알 수 없습니다. 따라서 -k에 의해 수행된 작업은 모든 다운로드가 끝날 때 수행됩니다.

내가 비슷한 일을 한다고 가정해 봅시다 wget --convert-links http://stackoverflow.com. 이 사이트는 너무 커서 모든 것을 다운로드하는 것을 결코 완료하지 못할 수도 있습니다. 이 경우 내 링크는 절대 변환되지 않습니다.

이 명령을 로컬에서 실행하면 등의 파일이 있는 디렉터리가 /tmp/wget표시됩니다 . stackoverflow.com그러나 색인 페이지를 로드하고 둘러보기 링크 위로 마우스를 가져가면 (실제 파일 위치) 대신 으로 이동됩니다.index.htmltour.htmlfile:///tour.htmlfile:///tmp/wget/stackoverflow.com/tour.html

답변1

유일한 문제는 다음과 같습니다.

이 경우 내 링크는 절대 변환되지 않습니다.

나는 아닌 것 같아요. 제한된 크기의 파티션에서 이것을 시도하고 공간이 부족할 때 wget이 무엇을 하는지 확인할 수 있습니다(또는 해당 --quota옵션을 사용하면 아마도 여전히 함께 변환될 것입니다).

왜 이런 전략인지 이해가 되네요. 이 작업이 즉석에서 수행된다면 다운로드하는 모든 프로젝트에 대한 모든 문서를 다시 확인해야 합니다. 고려하다:

  • A.html이 다운로드되었습니다.
  • B.html이 다운로드되었으니 이제 A.html의 링크를 확인해 보세요.
  • C.html이 다운로드되었으니 이제 A.html과 B.html의 링크를 확인해 보세요.
  • ...등.

대신 아마도 목록을 유지한 다음 마지막에 모든 파일을 검색하십시오.한 번. 물론 모든 링크의 색인을 유지하면 즉각적인 접근 방식이 향상될 수 있지만 여전히 속도가 훨씬 느려질 것이라고 생각합니다.디스크에 더 자주 기록해야 합니다. 파일을 저장한 다음 마지막에 한 번 변경하는 대신 수십, 수백 번 다시 작성하는 경우가 많습니다.

관련 정보