1

google docs api(python)を使用して、コレクションとサブコレクションを作成し、作成されたサブコレクションにファイルをアップロードしようとしています。

最初の質問:以下のコードですべて問題ありません。階層は問題ありません(folder1の下のsubfolder1、subfolder1の下のアップロードされたファイル)が、唯一の問題は、サブフォルダーとファイルがエンドユーザーのホームにも表示されることです。ホームの上位レベルのコレクションのみを表示したいと思います。

リソース(サブコレクションとファイル)がホームに表示されないようにする方法はありますか?

注:次の方法を試しましたが、同じ結果が得られます:1)create_resourceのパラメーター'collection ='は同じ結果になります2)cli​​entloginまたはtwoleggedoauthは同じ結果になります

2番目の質問: 説明フィールドを設定することは可能ですか?

import gdata.data
import gdata.docs.client
import gdata.acl.data
import gdata.docs.data

GAPPS_OAUTH_CONSUMER_KEY = "xxxx"
GAPPS_OAUTH_CONSUMER_SECRET = "xxxxx"
GAPPS_ADMIN_ACCOUNT = "x"

GAPPS_CLIENT_LOGIN_LOGIN='xxxxx'
GAPPS_CLIENT_LOGIN_PWD='xxxxx'
GAPPS_CLIENT_LOGIN_APP='xxxxxx'

filepath = 'C:\\Users\\xxxxx\\Pictures\\'
filename = 'xxxxxx.png'

path = filepath + filename

client = gdata.docs.client.DocsClient()
client.ssl = True
#client.ClientLogin(GAPPS_CLIENT_LOGIN_LOGIN, GAPPS_CLIENT_LOGIN_PWD, GAPPS_CLIENT_LOGIN_APP)
client.auth_token = gdata.gauth.TwoLeggedOAuthHmacToken(GAPPS_OAUTH_CONSUMER_KEY, GAPPS_OAUTH_CONSUMER_SECRET, GAPPS_ADMIN_ACCOUNT)

# create a folder

collection1 = gdata.docs.data.Resource('folder', title = 'Script Folder')
collection1 = client.create_resource(collection1)

# create a sub-folder in collection1

subcollection1 = gdata.docs.data.Resource('folder', title = 'Script Sub Folder')
subcollection1 = client.create_resource(subcollection1)

res = client.move_resource(subcollection1, collection = collection1, keep_in_collections = False)

# Upload the resource in subcollection1

doc = gdata.docs.data.Resource(type = 'file', title = filename)
media = gdata.data.MediaSource()
media.SetFileHandle(path, 'application/octet-stream')
create_uri = gdata.docs.client.RESOURCE_UPLOAD_URI + '?convert=false'
doc = client.CreateResource(doc, create_uri = create_uri, media = media)
print 'Created, and uploaded:', doc.title.text, doc.resource_id.text

client.move_resource(doc, collection = subcollection1, keep_in_collections = False)
4

2 に答える 2

1

解決策は次のとおりです。

subcollection1 = gdata.docs.data.Resource('folder', title = 'Script Sub Folder')
subcollection1.AddCategory(gdata.docs.data.LABELS_NS, gdata.docs.data.LABELS_NS + "#" +gdata.docs.data.HIDDEN_LABEL, gdata.docs.data.HIDDEN_LABEL)
subcollection1 = client.create_resource(subcollection1)
于 2012-05-31T07:54:58.707 に答える
0

もっと簡単な方法がもう 1 つあります。

subcollection1 = client.create_resource(subcollection1,collection=collection1)

この方法では、スクリプト サブフォルダーがルート フォルダーに表示されることはありません。

于 2013-07-11T06:57:16.363 に答える