Google Drive에서 대용량 폴더 다운로드

Google Drive에서 대용량 폴더 다운로드

다운로드할 스크립트를 작성하고 싶습니다.이 폴더Google 드라이브에서. 이 스크립트는 비전문가 UNIX 사용자를 대상으로 하므로 컬이나 wget 외에는 사용하고 싶지 않습니다. fileid가 있는 솔루션을 본 적이 있지만 제 경우에는 fileid를 얻을 수 없습니다.

Google 드라이브에서 폴더를 다운로드한 사람이 있나요?

내가 시도한 솔루션은 다음과 같습니다.

답변1

Google 드라이브에서 대용량 폴더를 다운로드하기 위해 찾은 가장 쉬운 최신 솔루션(2021)은 gdrive입니다.

http://github.com/prasmussen/gdrive

gdrive download --recursive --skip <file_id>

<file_id>ID는 폴더 URL에서 가져옵니다 . 아무것도 구성할 필요가 없으며 자격 증명 등을 묻는 메시지가 표시됩니다.

--skip플래그는 어느 시점에서 다운로드 시간이 초과될 수 있으므로 큰 폴더에 유용합니다. 그런 다음 명령을 다시 실행하면 --skip다음과 같이 작동합니다 rsync.

현재로서는 --skipGo를 통해 설치한 경우 사용할 수 있는 비교적 새로운 플래그입니다. gdrive시스템에 gdrive이 기능이 없으면 해당 기능 없이 동일한 작업을 시도해 보세요 --skip. 그런 다음 꼭 필요한 경우 go getgithub readme 페이지의 지침에 따라 설치하세요.

답변2

저는 상위 폴더 내의 하위 폴더와 파일을 재귀적으로 검색하는 PyDrive 라이브러리를 사용하여 Python 코드를 작성했습니다. 그런 다음 파일 ID를 사용하여 wget을 사용하여 bash 스크립트를 생성했습니다.

1 단계 저는 PyDrive 라이브러리를 사용했습니다. 이 라이브러리를 사용하려면 여기에 설명된 지침을 완료해야 합니다.협회.

2단계 이제 "client_secrets.json" 파일을 저장한 동일한 작업 디렉터리에 Python 스크립트 또는 노트북을 생성합니다. 아래에 노트를 첨부했습니다.

https://gist.github.com/immuntasir/73b8e8eef7e6c9066aaf2432bebf7db0

3단계 scp를 사용하여 "script.sh"를 원격 서버에 복사합니다. scp ~/path/script.sh username@ip:path

4단계 삭제 서버에 로그인하고 해당 경로로 이동합니다. 그런 다음 다음 명령을 사용하여 스크립트를 실행 가능하게 만듭니다. chmod 777 script.sh 스크립트를 실행하면 짜잔! ./script.sh

나는 또한 여기에서 찾을 수 있는 튜토리얼을 작성했습니다:https://medium.com/@immuntasir/recursively-download-all-the-contents-of-a-google-drive-folder-using-python-wget-and-a-bash-script-d8f2c6b105d5

도움이 되었기를 바랍니다!

답변3

귀하의 fileId는 폴더의 URL에 있으며 간단히 실행할 수 있습니다

wget --no-check-certificate 'https://docs.google.com/uc?export=download&id=FILEID' -O FILENAME

관련 정보