2017-03-11 11 views
0

情報がぼんやりと表示されますfrom here拡張子をプログラムで更新できません

私がACCESS_TOKENAPP_IDを持っているとすれば、次のようにしてクロムエクステンションを更新できるはずです。

r = requests.put(
    'https://www.googleapis.com/upload/chromewebstore/v1.1/items/%s' % APP_ID, 
    headers={'Authorization': "Bearer %s" % ACCESS_TOKEN, 
      'x-goog-api-version': "2"}, 
    files={'file': open('target_extension.crx', 'rb')}) 
print r.text 

プリント:

{"error":{"errors":[{"domain":"global","reason":"notUpload","message":"Not an upload request. Re-send request to: https://www.googleapis.com/chromewebstore/v1.1/items/fmcklaikklmlfahjgdndacebapkpefan"}],"code":400,"message":"Not an upload request. Re-send request to: https://www.googleapis.com/chromewebstore/v1.1/items/fmcklaikklmlfahjgdndacebapkpefan"}} 

[OK]を、私はURLを切り替える、十分に明確なようだ:

r = requests.put(
    'https://www.googleapis.com/chromewebstore/v1.1/items/%s' % APP_ID, 
    headers={'Authorization': "Bearer %s" % ACCESS_TOKEN, 
      'x-goog-api-version': "2"}, 
    files={'file': open('target_extension.crx', 'rb')}) 
print r.text 

プリント:

{"error":{"errors":[{"domain":"global","reason":"wrongUrlForUpload","message":"Uploads must be sent to the upload URL. Re-send this request to https://www.googleapis.com/upload/chromewebstore/v1.1/items/fmcklaikklmlfahjgdndacebapkpefan"}],"code":400,"message":"Uploads must be sent to the upload URL. Re-send this request to https://www.googleapis.com/upload/chromewebstore/v1.1/items/fmcklaikklmlfahjgdndacebapkpefan"}} 

だから、一つは、私はないですと言いますアップロード、切り替え。そしてもう1人は私がアップロードしていると言って、戻ってきます。私はここで間違って何をしていますか?

+0

私はこのpythonライブラリに慣れていませんが、[はっきりと](https://stackoverflow.com/a/11833013)PUTリクエストのファイルに 'data'キーを使用する必要があります。 – wOxxOm

答えて

1

おかげで、wOxxOmのおかげで、これを理解することができました。また、私はzipをアップロードするはずだったが、crxではないことが判明した。

filepath = 'target_extension.zip' 
with open(filepath, 'rb') as fh: 
    resp = requests.put(
     'https://www.googleapis.com/upload/chromewebstore/v1.1/items/%s' % APP_ID, 
     data=fh.read(), 
     headers={'Authorization': "Bearer %s" % ACCESS_TOKEN, 
           'x-goog-api-version': "2"}, 
     params={'file': filepath}) 
関連する問題