나는 사용하여 다음 페이지에서 한 번에, 파일을 다운로드하고 싶은 curl
:
http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/
나는 curl http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/
터미널에서 많은 줄을 반환했지만 파일을 얻지 못했습니다.
나는 사용하여 다음 페이지에서 한 번에, 파일을 다운로드하고 싶은 curl
:
http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/
나는 curl http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/
터미널에서 많은 줄을 반환했지만 파일을 얻지 못했습니다.
답변:
wget
대신 사용하십시오 . brew install wget
Homebrew를 설치했거나 sudo port install wget
MacPorts를 설치 한 경우 설치할 수 있습니다 .
디렉토리 목록에서 파일을 다운로드하려면 -r
(재귀), -np
(부모 디렉토리에 대한 링크를 따르지 않음) -k
을 사용하고 다운로드 한 HTML 또는 CSS의 링크가 로컬 파일을 가리 키도록하십시오 (credit @xaccrocheur).
wget -r -np -k http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/
다른 유용한 옵션들 :
-nd
(디렉토리 없음) : 모든 파일을 현재 디렉토리로 다운로드-e robots.off
: robots.txt 파일을 무시하고 robots.txt 파일을 다운로드하지 마십시오-A png,jpg
: 확장자가있는 파일 만 허용 png
하거나jpg
-m
(거울): -r --timestamping --level inf --no-remove-listing
-nc
, --no-clobber
: 파일이 있으면 다운로드 건너 뛰기brew
그리고 port
wget과를 설치하는 나를 위해 작동하지 않습니다. 어떻게해야합니까?
-k
이 항상 작동하지는 않습니다. 예를 들어, 웹 페이지에서 동일한 파일을 가리키는 두 개의 링크가 재귀 적으로 캡처하려고 wget
하면 첫 번째 인스턴스의 링크 만 변환하고 두 번째 링크는 변환하지 않는 것 같습니다.
curl
하나의 웹 페이지 파일 만 읽을 수 있습니다. 여러 줄은 실제로 디렉토리 색인입니다 (이 URL로 이동하면 브라우저에도 표시됨). 사용 curl
및 일부 유닉스 도구 마술은 파일이 당신이 좋아하는 무언가를 사용할 수 얻으려면
for file in $(curl -s http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/ |
grep href |
sed 's/.*href="//' |
sed 's/".*//' |
grep '^[a-zA-Z].*'); do
curl -s -O http://www.ime.usp.br/~coelho/mac0122-2013/ep2/esqueleto/$file
done
모든 파일을 현재 디렉토리로 가져옵니다.
폴더 / 디렉토리가있는 사이트에서 많은 파일을 얻는 것을 포함하여보다 정교한 요구 wget
가있는 경우 이미 다른 답변에서 제안한 것처럼 더 나은 옵션입니다.
xmllint --html --xpath '//a/@href'
아마보다 더 나은 파서 일 것 grep
입니다.
참조 : http://blog.incognitech.in/download-files-from-apache-server-listing-directory/
다음 명령을 사용할 수 있습니다.
wget --execute="robots = off" --mirror --convert-links --no-parent --wait=5 <website-url>
wget
: CURL을 요청하고 로컬 파일로 원격 파일을 다운로드하는 간단한 명령입니다.--execute="robots = off"
: 페이지를 크롤링하는 동안 robots.txt 파일을 무시합니다. 모든 파일을받지 못한 경우 도움이됩니다.--mirror
:이 옵션은 기본적으로 주어진 URL의 디렉토리 구조를 반영합니다. 바로 가기입니다 -N -r -l inf --no-remove-listing
.
-N
: 로컬보다 최신이 아닌 경우 파일을 다시 검색하지 마십시오-r
: 재귀 다운로드 지정-l inf
: 최대 재귀 깊이 (무한의 경우 INF 또는 0)--no-remove-listing
: '.listing'파일을 제거하지 마십시오--convert-links
: 다운로드 한 HTML 또는 CSS의 링크가 로컬 파일을 가리 키도록합니다.--no-parent
: 상위 디렉토리로 올라가지 마십시오.--wait=5
: 검색 사이에 5 초 동안 기다립니다. 그래서 우리는 서버를 쓰러 뜨리지 않습니다.<website-url>
: 파일을 다운로드 할 수있는 웹 사이트 URL입니다.해피 다운로드 : 스마일 :
GUI를 사용하여 응용 프로그램을 사용하려는 사람들에게는 일반적으로 필요한 작업을 처리 할 수있는 사전 설정 목록과 함께 사용자에게 친숙한 방식으로 구현되는 저렴한 쉐어웨어 프로그램 DeepVacuum for Mac OS Xwget
가 있습니다. 사용자 정의 구성을 사전 설정으로 저장할 수도 있습니다.
wget -r -np -k http://your.website.com/specific/directory
. 트릭은-k
로컬보기를 위해 링크 (이미지 등)를 변환하는 데 사용 하는 것입니다.