Новое на python, писал это около часа. Google docs api и примеры замечательные. Я могу подключать и создавать файлы и т. Д. Я хочу сделать резервную копию всех моих файлов на диске Google, поэтому попробовал использовать os.walk
и столкнулся с постоянной ошибкой отступа, которую я не понимаю.ошибка отладки python
#!/usr/bin/python
import httplib2
import pprint
from apiclient.discovery import build
from apiclient.http import MediaFileUpload
from oauth2client.client import OAuth2WebServerFlow
from oauth2client.client import Credentials
import os
import sys
rootdir = sys.argv[1]
CLIENT_ID = 'MYCLIENT ID'
CLIENT_SECRET = 'MY SECRET ID'
OAUTH_SCOPE = 'https://www.googleapis.com/auth/drive'
# Redirect URI for installed apps
REDIRECT_URI = 'urn:ietf:wg:oauth:2.0:oob'
json_creds = open('backup_credentials.json', 'r').read()
credentials = Credentials.new_from_json(json_creds)
#
# Create an httplib2.Http object and authorize it with our credentials
http = httplib2.Http()
http = credentials.authorize(http)
drive_service = build('drive', 'v2', http=http)
#Here is where the problem starts
for root, subFolders, files in os.walk(rootdir):
for filename in files:
filepath = os.path.join(root, filename)
print (filepath)
media_body = MediaFileUpload(filepath, mimetype='text/plain', resumable=True)
body = {'title': filename,'description': 'A test document','mimeType': 'text/plain'}
file = drive_service.files().insert(body=body, media_body=media_body).execute()
pprint.pprint(file)
Ошибка обижая является строка файла = ...
Фактическая ошибка
File "./quickstart.py", line 59
file = drive_service.files().insert(body=body, media_body=media_body).execute()
^
IndentationError: unindent does not match any outer indentation level
Ваш отступ выключен после 'body = {' –
Не смешивайте вкладки и пробелы. [PEP 8] (http://www.python.org/dev/peps/pep-0008/#tabs-or-spaces) говорит: «Никогда не смешивайте вкладки и пробелы. Самый популярный способ отступов Python - это пробелы 2. Самый популярный способ - только с вкладками. Код с отступом со смесью вкладок и пробелов должен быть преобразован в использование пробелов исключительно. ** При вызове интерпретатора командной строки Python с опцией -t он выдает предупреждения о коде что незаконно смешивает вкладки и пробелы. ** При использовании -tt эти предупреждения становятся ошибками. Эти варианты очень рекомендуются! " –