Wget 매뉴얼을 읽었지만 불행히도 내 문제가 해결되지 않는 것 같습니다. 누군가 나에게 도움을 줄 수 있다면 감사하겠습니다.
우리는 (예를 들어) website.com/1/, website.com/2/... 등과 직접 연결되는 (예를 들어) website.com 웹사이트를 가지고 있습니다.
이제 website.com/r/(r은 정수)의 각 페이지는 여러 PDF 문서에 연결됩니다. website.com/r/doc-i.pdf(편리함) 대신 모두 website.com/files/doc-i.pdf에 있습니다.
따라서 명령을 실행하면 wget -r -l 2 -A pdf website.com
물론 모든 PDF 문서가 포함된 "files"라는 큰 폴더가 생성됩니다.
그러나 나는 다운로드된 페이지에 해당하는 1, 2, ..., n이라는 이름의 다른 폴더로 구성하는 것을 선호합니다. 총 약 10,000개의 PDF 파일을 다운로드하게 되므로 이 작업을 수동으로 수행할 필요가 없습니다.
그렇다면 Wget에게 웹사이트 디렉터리 구조가 아닌 파일에 액세스하는 경로에 따라 파일을 정리하라고 어떻게 말해야 할까요?
내 설명이 명확하고 구현하기가 너무 어렵지 않기를 바랍니다.
답변1
(테스트되지 않음) 다음은 약간의 조정이 필요하며 일반적인 아이디어입니다.
### get level1
wget -r -l website.com/
#### for each html file otained,
for a in $(find website.com -name '*.html' )
do
### get level 2 but prefix it with the base name
b=$(basename $a)
wget -P $b -r -l 1 -A pdf http://$a
done
- 어쩌면 이 발견에는 약간의 터널링이 필요할 수도 있습니다.
mv $b/website.com/files FINAL/$b
레벨을 낮추기 위해 무언가를 추가할 수도 있습니다.