谷歌Colaboratory真的很酷,但如果我可以访问我的所有谷歌驱动器文件,而不使用标准的谷歌驱动器API将更有用.
是否可能而且容易?如何?
我编写了一个脚本,用于从 API 中提取一些数据并构建一个 Excel 文件。我不是开发人员,这是我编写的第一个真正的程序。我在 Google Colab 上托管了代码。
有明文的 API 密钥。我想通过 Google Drive 共享链接与需要生成 Excel 文件的人共享它,以便他们可以执行它。但是,我不希望明文包含 API 密钥,以避免在企业外意外共享。
我想知道如何隐藏它......或者如何为用户提供另一种方法来在不知道密码的情况下执行文件。我无法访问企业内部的共享网络服务器。
问候
CLIENT_KEY = u'*****'
CLIENT_SECRET = u'*****'
BASE_URL = u'*****'
access_token_key = '*****'
access_token_secret = '*****'
print ('Getting user profile...',)
oauth = OAuth(CLIENT_KEY, client_secret=CLIENT_SECRET, resource_owner_key=access_token_key,
resource_owner_secret=access_token_secret)
r = requests.get(url=BASE_URL + '1/user/me/profile', auth=oauth)
print (json.dumps(r.json(), sort_keys=True, indent=4, separators=(',', ': ')))
...
Run Code Online (Sandbox Code Playgroud) 限制之一是我们每次只能连续获得 12 小时。GPU和TPU的使用有限制吗?
我正在使用google colaboratory用python教授数据科学,为了让笔记本只留给学生的特定课程,我想导入一些我们编码的基本方法,而不是给他们一个预先填充这些方法的大笔记本防止任何分心.
如何导入这些方法而不在pip上发布它们?可以从github google-colaborary pip安装吗?
对我们来说最好的选择是能够在Drive中获得代码并将模块上传到colab空间,就像我们使用csv文件一样,并使用标准导入.那可能吗?
从colaboratory,是否有可能直接操纵谷歌驱动器中的sqlite 3格式数据?您可以上传它,但在谷歌驱动器中使用它很方便.
我已经将大量 .jpg 图像从我的 Google Drive 复制到 Google Colab 每个Google Colab:如何从我的谷歌驱动器读取数据?:
local_download_path = os.path.expanduser('~/data')
try:
os.makedirs(local_download_path)
except: pass
# 2. Auto-iterate using the query syntax
# https://developers.google.com/drive/v2/web/search-parameters
file_list = drive.ListFile(
{'q': "'1SooKSw8M4ACbznKjnNrYvJ5wxuqJ-YCk' in parents"}).GetList()
for f in file_list:
# 3. Create & download by id.
print('title: %s, id: %s' % (f['title'], f['id']))
fname = os.path.join(local_download_path, f['title'])
print('downloading to {}'.format(fname))
f_ = drive.CreateFile({'id': f['id']})
f_.GetContentFile(fname)
Run Code Online (Sandbox Code Playgroud)
这已完成,因此所有图像文件都应位于一个data
文件夹中。我现在如何实际访问这些文件?我想遍历文件data
夹中所有 .jpg 类型的文件。
我正在尝试从Google驱动器将文件下载到colaboratory。
file_id = '1uBtlaggVyWshwcyP6kEI-y_W3P8D26sz'
import io
from googleapiclient.http import MediaIoBaseDownload
request = drive_service.files().get_media(fileId=file_id)
downloaded = io.BytesIO()
downloader = MediaIoBaseDownload(downloaded, request)
done = False
while done is False:
# _ is a placeholder for a progress object that we ignore.
# (Our file is small, so we skip reporting progress.)
_, done = downloader.next_chunk()
downloaded.seek(0)
print('Downloaded file contents are: {}'.format(downloaded.read()))
Run Code Online (Sandbox Code Playgroud)
这样做会出现此错误:
NameError: name 'drive_service' is not defined
Run Code Online (Sandbox Code Playgroud)
如何清除此错误?
我在这里发现了这个很好的问题: https ://stackoverflow.com/questions/48376580/google-colab-how-to-read-data-from-my-google-drive 它帮助我将 colab 连接到我的驱动器
这也是:
from google.colab import drive
drive.mount('/content/gdrive')
Run Code Online (Sandbox Code Playgroud)
我的问题:有没有办法只执行一次谷歌身份验证过程?如果不使用,Colab 会不时断开连接,并且我需要重新启动身份验证过程。
谢谢
目前,我处理 400 多张图片并上传它们
from google.colab import files
uploaded = files.upload()
Run Code Online (Sandbox Code Playgroud)
这个工作正常,但每次离开我的合作实验室时我都必须重新上传所有图像。很烦人,因为上传需要 5-10 分钟。
有没有可能阻止这种情况?Colaboratory 似乎只是暂时保存文件。
我必须使用 Google Colaboratory,因为我需要他们的 GPU。
提前致谢 :)