简体   繁体   中英

mount google drive in kaggle notebook

In google colab, I easily mount my google drive with this:

from google.colab import drive
drive.mount('/content/gdrive')

In kaggle's notebook, however, it gives this error:

KeyError                                  Traceback (most recent call last)
<ipython-input-14-2b128295b616> in <module>
      2 # !pip install google-colab
      3 from google.colab import drive
----> 4 drive.mount('/content/gdrive')
      5 # Set your own project id here
      6 # PROJECT_ID = 'your-google-cloud-project'

/opt/conda/lib/python3.6/site-packages/google/colab/drive.py in mount(mountpoint, force_remount, timeout_ms)
     80     return
     81 
---> 82   env = _env()
     83   home = env.home
     84   root_dir = env.root_dir

/opt/conda/lib/python3.6/site-packages/google/colab/drive.py in _env()
     41   home = _os.environ['HOME']
     42   root_dir = _os.path.realpath(
---> 43       _os.path.join(_os.environ['CLOUDSDK_CONFIG'], '../..'))
     44   inet_family = 'IPV4_ONLY'
     45   dev = '/dev/fuse'

/opt/conda/lib/python3.6/os.py in __getitem__(self, key)
    667         except KeyError:
    668             # raise KeyError with the original key value
--> 669             raise KeyError(key) from None
    670         return self.decodevalue(value)
    671 

KeyError: 'CLOUDSDK_CONFIG'

This is my setup in kaggle notebook (also tested this , did not work):

!pip install google-colab # I don't know if this is the correct package
from google.colab import drive
drive.mount('/content/gdrive')

In fact, the google-colab library does not exist in the Kaggle Kernel. In this way, I use the following procedure to deal with this problem in Kaggle Kernel:

  • First, extract the ID of your desire file from google drive:

    1. In your browser, navigate to drive.google.com.

    2. Right-click on the file, and click "Get a shareable link"

      右键获取共享链接

    3. Then extract the ID of file from URL:

      在此处输入图像描述

  • Next, install gdown PyPI module using conda :

    ! conda install -y gdown

  • Finally, download the file using gdown and the intended ID:

    !gdown --id <put-the-ID>

For example:

!gdown --id 1-1wAx7b-USG0eQwIBVwVDUl3K1_1ReCt

google-colab不由 Google 维护,并且像drive.mount这样的 Colab 库无法在 Colab 环境本身之外运行。

As the stack trace suggests you have some keys missing.

  • CLOUDSDK_CONFIG

You can get this key by logging into GCP and searching for creds

To use these secretively: place this key into Kaggle Secrets Add-ons.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM