여러 개의 이미지를 일일이 우클릭하여
다운로드 하는게 너무 힘들어서
프로그램으로 할 수 있는 방법이 없을까해서
오래도록 찾았는데 이제서야 정리한다...
(이미지 말고도 다양한 확장자의 파일을 다운로드할 수 있다.)
아주 쉽고 간단하다.
방법1.
(New-Object System.Net.WebClient).DownloadFile('다운로드할 파일의 주소','저장할 경로\파일명.확장자');
방법2.
Invoke-WebRequest ('다운로드할 파일의 URL') -OutFile ('저장할 경로\파일명.확장자');
(+ cmd에서 사용하는 방법)
powershell.exe -ExecutionPolicy ByPass -WindowStyle Normal (위의 파워쉘 명령어)
→ CMD에서 powershell을 동작시켜서 입력한 명령어를
처리하도록 하는 방식으로 *CMD방식이 기준이 됨
(아래의 환경변수 설명 참고)
[ 다운로드 ]
[ 추가정보 ]
* 오류가 발생하는 경우는 URL이 유효하지 않거나
저장할 경로가 잘못된 경우 발생할 수 있음
* 여러 파일을 한번에 다운로드 받으려면
URL에 규칙성이 있으면 좋겠지만, 그렇지 못하면
웹파싱을 활용해야할 것 같다.
→ https://devjit.tistory.com/23
* 확장자 상관없이 다운로드 받은 결과는 동일함
(JPG, PNG, GIF 용량동일)
* 환경변수를 통해서 다운로드 받을 경로를
용이하게 설정할 수 있는데 (예:%USERPROFILE%)
CMD에서는 %변수%,
파워쉘에서는 $env:변수로 한다.
↓
Powershell ISE에서는
(New-Object System.Net.WebClient).DownloadFile('다운로드할 파일의 주소',
'%USERPROFILE%\Desktop\test\test.jpg');
명령어가 유효하지 않지만
powershell.exe -ExecutionPolicy ByPass -WindowStyle Normal
(New-Object System.Net.WebClient).DownloadFile('다운로드할 파일의 주소',
'%USERPROFILE%\Desktop\test\test.jpg');
CMD에서 실행시키는 파워쉘에서는 유효하다.
대신 파워쉘에서는
(New-Object System.Net.WebClient).DownloadFile('다운로드할 파일의 주소',
'$env:USERPROFILE\Desktop\test\test.jpg');
으로 대체할 수 있다.
[ 참고자료 ]
○ https://runardor.tistory.com/18 ○ https://jsoft.tistory.com/247 |
댓글