Unter bestimmten Umständen wurde es erforderlich, die Datei auf Google Drive automatisch zu duplizieren. In diesem Memo wurde daher untersucht, wie dies zu tun ist.
http://wwld.jp/2015/11/07/spreadsheet-api.html Wie in eingeführt, müssen Sie die Laufwerks-API aktivieren. Aktivieren Sie sie daher.
Anmeldeinformationen sind erforderlich, da die Google Drive-API verwendet wird. Die Methode zum Abrufen von Authentifizierungsinformationen scheint sich je nach Jahreszeit nach und nach zu ändern. Ich denke, dass die Methode wie die oben erwähnte Website http://wwld.jp/2015/11/07/spreadsheet-api.html im Allgemeinen in Ordnung ist.
SECRET_JSON = '<PATH_TO_SECRET_JSON>'
FILE_ID = '<FILE ID on Google Drive>'
# ---- get credentials
from oauth2client.service_account import ServiceAccountCredentials
scope = ['https://spreadsheets.google.com/feeds',
'https://www.googleapis.com/auth/drive']
credentials = ServiceAccountCredentials.from_json_keyfile_name(SECRET_JSON, scope)
# ---- create Google Drive Service
from apiclient.discovery import build
import httplib2
http = httplib2.Http()
http = credentials.authorize(http)
service = build('drive', 'v3', http=http)
# ---- Copy the file on Google Drive
new_file_body = {
'name': 'new_data', #Dateiname der neuen Datei.Kann ausgelassen werden
'parents': ['0Bxxxx-abcdefghijklmnopqrstu'], #Ordner-ID des Kopierziels.Kann ausgelassen werden
}
# ref: https://developers.google.com/resources/api-libraries/documentation/drive/v3/python/latest/drive_v3.files.html#copy
new_file = service.files().copy(
fileId=FILE_ID, body=new_file_body
).execute()
print(new_file)
Ausgabebeispiel
{
'kind': 'drive#file',
'mimeType': 'application/vnd.google-apps.spreadsheet',
'name': 'new_data',
'id': '1zzzzzzzzzzz-xxxxxxxxxxxxxx-xxxxxxxxx'
}
Ich glaube, ich kann es schaffen, und wenn es einmal fertig ist, ist es einfach, aber es ist schwer, einen Weg zu finden. ..
Recommended Posts