問題タブ [google-api-python-client]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - App Engine サービス アカウントの使用中にリンク切れエラーが発生する
私はこのチュートリアルに従っています
これが私のmain.pyコードです
ここに私のapp.yamlファイルコードがあります
はい、Google APIコンソールのチームタブにアプリエンジンサービスアカウント名を追加し、権限を編集できます。アプリをアップロードしてリンクにアクセスしようとすると、
以前にこれをローカルで実行し、リンクを使用してアクセスしようとしました。次に、localhost:8080
ローカルで実行しているとエラーが発生する可能性があると考えたので、コードをにアップロードしました
それでもエラーが発生します。
編集: App.yaml を更新
しかし、別のエラーが発生します
python - .jpeg .gifなどのドキュメントなしのファイルでGoogleドキュメントリストAPIを使用するにはどうすればよいですか?
現在、gdata-python-client(GoogleドキュメントリストAPI)を使用してLinux OSのターミナルでGoogleドライブにアクセスしていますが、画像ファイルを表示するのに問題があります-.doc.xlsまたは.pdfファイルのみが表示されます
gdata-python-clientをまだ使用している場合の問題を解決するための解決策はありますか?APIをGoogleドライブAPIに変更するよりも優れたソリューションがあることを願っています。つまり、プロジェクトを再開する必要があります!!。とても悲しい :(
また、GoogleドライブAPIを使用するように変更した場合、どうすればよいですか?または、プロジェクトの動作と互換性を新しいAPIと再利用できますか?
アドバイスやチュートリアルを教えてください。どうもありがとうございました:)
python - Drive SDKで使用するためにappengineの任意のユーザーにログインするにはどうすればよいですか?
単一のドライブアカウントにログインし、cronジョブを使用してファイルに対して操作を自動的に実行する必要があるアプリケーションがあります。最初は、ドメイン管理者ログインを使用してこれを実行しようとしましたが、ドメイン管理者アカウントでテストサーバーを使用できないようで、アプリケーションのテストが少し不可能であるため、ドメイン管理者でテストを実行できません。 !!
そのため、初期設定後にこのアカウントに自動的にログインするために、任意のoauthトークン(特に更新トークン)の保存を検討し始めました。ただし、すべてのAPIとドキュメントは、複数の個々のユーザーが手動でログインしていることを前提としており、現在ログインしているユーザー以外へのログインを許可または説明する機能がoauthAPIに見つかりません。
テストドメインでコードをテストできる方法でこれを実現するにはどうすればよいですか?独自のoauthライブラリを作成したり、oauthリクエストを手動で実行したりせずにそれを行うことはできますか?または、ドメイン管理者の承認をローカルテストサーバーで機能させる方法はありますか?
python - Python Google Drive API での SSL エラー
基本的にhttps://developers.google.com/drive/quickstart-pythonのコードと同じで、最初の試行のたびに同じエラーが発生します:
これを Python 2.6.4、httplib2 v0.7.7、および google-api-python-client v1.0b9 で実行します。誰かがアイデアを持っていれば...私はとても感謝しています。
google-app-engine - GAEはgflagsをインポートしません
oauthをGoogleAppEngine(GAE)で動作させようとしていますがOAuth2Decorator
、インポートしようとしてgflags
失敗するため、インポートできません。
コマンドラインで実行しhelp('modules')
、gflagsが一覧表示され、++を実行import os
して受信しましたimport gflags
。print os.path.dirname(gflags.__file__)
/Library/Python/2.7/site-packages/python_gflags-2.0-py2.7.egg
GAE Dev Consoleで、次のコマンドを実行しました。
受け取った:
gflags
はによってインポートされますが、コードを実行するたびにfrom oauth2client.appengine import OAuth2Decorator
GAEがインポートに失敗します。gflags
違いがあるかどうかはわかりませんが、MacOS10.7.5とpython2.7.1を実行しています。
python - Google API クラス設計の AccessTokenRefreshError
Google API 呼び出しの基本的なボイラー プレートの初期化のための基本クラスを作成しようとしています。オンラインでチュートリアルを読むと、呼び出しごとに再初期化するのではなく、http トランスポート オブジェクトを再利用する必要があると思います。
基本情報:
プラットフォーム: Google の AppEngine - スレッドが有効になっている Python 2.7
エラー:
基本クラスの実装:
私は何かを誤解しているに違いないか、私のデザインに欠陥があります。接続したい API (BigQuery と Storage) ごとに個別のクラスを専用にすると、まったく問題なく動作しました。クラス間でコンストラクターを共有しようとしています。
この方法は、別の資格情報メカニズムを使用していますが、ローカルでは問題なく機能します。
このクラスの実装例:
私が間違っていることはありますか?私の設計に欠陥はありますか?また、私がやりたいことを実装するためのより良い方法はありますか? 毎回サービス インターフェイスを構築する必要はないと思いますが、構築しなければスレッドセーフでしょうか? このメソッドはスレッドセーフですか?
どんな助けでも大歓迎です!
google-app-engine - GAE からの bigquery v2 のタイムアウト
Google アプリ エンジンで自分のアプリから BigQuery にクエリを実行していますが、BQ から奇妙な結果が返されることがあります (discovery#restDescription)。クエリしているデータの量が多い場合にのみ問題が発生するため、クエリが10秒以内にタイムアウトすることを理解するのに少し時間がかかりました。
ここで問題の適切な説明を見つけました: BigQuery クエリへの応答が悪い
GAE ドキュメントをもう一度読んだ後、HTTP リクエストは数秒以内に処理する必要があることがわかりました。したがって、これは推測にすぎませんが、bigquery も同じように自分自身を制限している可能性があるため、「数秒以内に」クエリに応答する必要があります。
これが事実である場合、まず第一に、私のbigqueryリクエストは確かに数秒以上かかるので、私は少し驚いています...しかし、とにかく、私は1秒のタイムアウトを強制的にテストしましたクエリを実行し、API 呼び出し getQueryResults をポーリングして queryResult を取得します。
その結果は非常に興味深いものです。BigQuery は、多かれ少なかれ 3 秒以内に何かを返します (私が尋ねたように 1 ではありません)。その後、ポーリングによって 26 秒以内に結果を取得します。これは、10 秒のタイムアウトの問題を回避しているように見えます。
しかし、本番環境でこのトリックを行っているとはほとんど思いません。
誰かが BigQuery で同じ問題に遭遇しましたか? クエリが「数秒」以上続く場合はどうすればよいですか?
クエリに使用するコードは次のとおりです。
結果を取得するために、次のようにポーリングします。
これらは、BigQuery で発生したログです。
これがクエリ API 呼び出しから返されるものです。メタデータでは、ステータスは「RUNNING」です。
jobId を使用すると、準備が整った 26 秒後に結果を取得できます。
他に方法があるに違いない!私は何を間違っていますか?
authorization - PythonクライアントlibAPIを使用してGCSスクリプトで動作するサービスアカウント認証を取得できません
サービスベースの認証を使用してGCSにアクセスするPythonスクリプトを作成しようとすると、次のことがわかりました。'key'は私のp12ファイルの内容であることに注意してください。
アカウントのバケットのリストを読み込もうとしています。GCSへのWebインターフェイスを使用して1つのバケットを正常に作成しましたが、gsutilでそれを確認できます。
以下のコードを実行すると、403エラーが発生します。最初は正しく認証されていないと思っていましたが、この非常に便利なWebページ(Webベースの認証を使用)から試してみましたが、正しく機能します。https://developers.google.com/apis-explorer/#p/storage/v1beta1/storage.buckets.list?projectId=&_h = 2&
ヘッダーとクエリ文字列を見て、それらをウェブサイトで生成されたリクエストのキーダーとクエリと比較すると、承認ヘッダーがなく、クエリ文字列にkey=タグがないことがわかります。私は、資格認定が私のためにこれを処理していただろうと思ったと思います。
私は何が間違っているのですか?
コード:
実行しようとすると、403が表示されます。
python - Calendar API V3 (ドメインホスト) にアクセスする GAE での OAuth2 認証
Python を使用して Google App Engine アプリを開発しています。そして、私は使用しています:
- Google Calendar API v3 (自分のドメインのカレンダーにアクセスするため。つまり、これは自分のドメインにインストールされた Google Apps です)
- Python 用の Google API クライアント ライブラリ。
- 自分のドメイン (name@mydomain.com) のユーザーを認証するための OAuth2
次の理由から、サービス アカウントを使用する必要があると考えました。
「アプリケーションのプロジェクトが所有するデータにアクセスするために App Engine アプリケーションが API を呼び出す必要がある場合は、サービス アカウントを使用して OAuth 2.0 を簡素化できます。」
https://developers.google.com/api-client-library/python/platforms/google_app_engine#ServiceAccountsから取得
しかし、私が何かを誤解したかどうかはわかりません。私のシナリオ (自分のドメインで GAE アプリが Google Apps にアクセスしようとしている) は、サービス アカウントの候補ですか?
OAuth2 を処理する方法をいくつか試しました。
- 前述のように、サービス アカウントを使用する
- Python 用の Google API クライアント ライブラリによって提供される Python デコレータを使用 (OAuth2Decorator および OAuth2DecoratorFromClientSecrets)
どちらの場合も、同じエラーが発生します。
- ローカル マシンで実行: https://www.googleapis.com/calendar/v3/calendars/primary/events?alt=jsonを要求すると、HttpError 401が「無効な資格情報」を返しました (次のように JSON オブジェクトとしてイベントを作成しました: https://developers.google.com/google-apps/calendar/v3/reference/events/insert#examples )。エラー スタック トレース: https://dl.dropbox.com/u/61566717/output/local_error
- GAE へのデプロイ: エラー 310 (net::ERR_TOO_MANY_REDIRECTS)。文字列「_ah/login_required?continue=」が URL の最後に数回追加されます。API コンソールで生成されたクライアント ID/クライアント シークレットまたはサービス アカウント パラメータに問題がある可能性がありますか? それらを再作成する必要がありますか?
私は完全に迷っています。手がかりはありますか?
よろしくお願いします
python - Google API クライアント シークレット エラー (Python)
Google アナリティクスからデータを取得したい。コンソールでサービス アカウントを作成し、Google の Python ( hello_analytics_api_v3.py
) コードを使用してデータにアクセスしています。
client_secrets.json
を自分のフォルダーにコピーしましたが、次のエラーが発生します。
私は何をすべきか?Python 2.7 を使用しています。