前の章では、YouTube Searchクエリキーワードから50を超えるビデオをこすりつける方法について説明しました。また、ビュー、コメントなど、各ビデオのパフォーマンスを取得する方法について説明しましたが、自動化電力の終わりではありません。これは、コラボレーションの招待プロセスを調査、フィルタリングし、自動化することを目指しているためです。少なくとも、CSVファイルではなく、クラウドドライブのデータシートにYouTuberの取得リストを保存および管理できます。その後、セットアップして、他のプラットフォームと簡単に統合できます。
したがって、このPythonチュートリアルでは、Pythonチュートリアル第6章からPythonスクリプトを引き続き使用します。ロボットユーザーアカウントの作成方法を説明し、GoogleシートAPIを活用します。これは、Web Scraping PythonスクリプトのGoogleシートにすべてのフェッチされたデータを保存するためです。このPythonチュートリアルの終わりまでに、セットアップする必要があるモジュールを学ぶことができます。次に、すべてのビデオをプリセット形式で自動的にリストするスプレッドシートを見るだけで体験できます。
目次:Easy2Digital APIとGoogleシートキーを使用して、Googleシートでデータを操作します
- Google APIコンソールでロボットサービスアカウントを作成します
- ロボットアカウントをGoogleシートに追加します
- MacBookにGoogleクライアントライブラリをインストールします
- Google APIモジュールをインポートします
- サーバーからサーバーへのアプリケーションにOAuth 2.0を使用します
- Sheets APIを呼び出します
- ビデオデータ値をGoogleシートに追加します
- GoogleシートAPIの使用制限
- Easy2Digital API- Googleシートでのデータ操作
- Googleシートの完全なPythonスクリプトAPIスクレーパーフェッチしたデータを保存する
Google APIコンソールでロボットサービスアカウントを作成します
YouTube APIと同様に、GoogleシートAPIはもちろんGoogle APIファミリーの一部です。まず最初に、資格情報を作成する必要があります。今回はサービスアカウントです。
基本的に、この作成の目的は、ロボットアカウントに名前を付け、アクセスレベルをロボットに付与し(通常は編集できるレベル)、今後のスクリプト作成で使用されるJSONスクリプトをダウンロードすることです。サービスアカウントの役割に関する1つの部分については、それは無視でき、このPythonチュートリアルに記入する必要はありません。
ロボットアカウントをGoogleシートに追加します
アカウントが作成された後、Google Cloudにアクセスして新しいGoogleシートを作成します。クラウドドライブは無料版である可能性がありますが、それは問題ではありません。共有ボタンでは、ロボットアカウントアドレスを追加して、エディターとして設定します。
MacBookにGoogleクライアントライブラリをインストールします
繰り返しになりますが、Pythonスクリプトで作成および採用するAPIは、通常、必要なインストールコード、スクリプトサンプルなどを含むAPIドキュメントを確認することを忘れないでください。ここに同じです。GoogleシートAPIに移動できます。 Python言語をご覧ください
MacとWindowsのオペレーティングシステムはほぼ同じであるため、MacBookを例に挙げています。端末に移動して、このコードを入力します。 PIP3で入力した理由は、MacProのデフォルトのPythonバージョンが2.7であり、それらを関連付けなかったためです。しかし、もちろん、あなたは私と違うことをすることができます。
PIP3インストール-Google-API-Python-Client Google-Auth-Httplib2 Google-Auth-Oauthlib
しばらくすると、インストールが完了します。
また、PIP3リストを入力してインストールされているパッケージを確認してみてください。結果は、それらが整っていることを示しています。
Google APIモジュールをインポートします
BeautifulSoup、リクエスト、CSVライティングなどについて話すだけでなく、スクリプト機能を作成するために必要な機能を含むモジュールを入力する必要があります。 APIドキュメントをチェックアウトしようとすると、使用するためのサンプルがありますが、サンプルはスクリプト作成の目的に完全に適合していません。したがって、目的に基づいて、1つのモジュールを選択して、残りを削除します。これにより、build()を使用してGoogleシートAPIオブジェクトを作成できます。
__future__からprint_functionをインポートします
ピクルスをインポートします
OS.PATHをインポートします
googleapiclient.discoveryインポートビルドから
Google_auth_oauthlib.flowからInstallededAppflowからインポート
google.auth.transport.requestsインポートリクエストから
サーバーからサーバーのアプリケーションにOAUTH 2.0を使用します
Google OAuth 2.0システムは、WebアプリケーションとGoogleサービスの間のサーバー間インタラクションをサポートしています。個々のエンドユーザーではなく、アプリケーションに属するアカウントであるサービスアカウントを作成しました。アプリケーションはサービスアカウントに代わってGoogle APIに電話をかけるため、ユーザーは直接関与していません。このシナリオは、「二本足のオース」または「2LO」と呼ばれることもあります。実際、それはロボットアカウントであり、WeChat Chatbotなど、今後の章で詳細を詳しく説明します。
以下は、コード行の上の必要なモジュール、オブジェクト、および変数です。
Google.oauth2からImport Service_Accountから
scopes = ['https://www.googleapis.com/auth/sqlservice.admin']
service_account_file = '/path/to/service.json'
資格情報= service_account.credentials.from_service_account_file(
service_account_file、scopes = scopes)
しかし、いくつかの場所を変更する必要があります。まず、API呼び出しの範囲を選択する必要があります。GoogleシートAPIスコープを参照できます。そして、ここでは、読み書きを選択する必要があります。
次に、Google APIコンソールで作成したときにダウンロードされたサービスアカウントJSONファイルの位置パスを更新する必要があります。これにより、Pythonはロボットアカウントを使用して表現してGoogleシートデータにアクセスして編集します。
また、変数名「資格情報」をクレジットに変更することをお勧めします。これは、デフォルトで設定された他のAPIオブジェクトで資格情報を分離するのが簡単です。
最後になりましたが、クレジットの前にクレジット=なしを追加する必要があります。これにより、クレジットがいかなる価値でも定義されていないことが保証されます。
Sheets APIを呼び出します
APIドキュメントスクリプトサンプルには、シートAPIを呼び出すために使用される3行のコーディングがあります。これをコピーしてPythonスクリプトに貼り付けることができます。 GoogleシートIDを更新するために必要な唯一のこと。
sample_spreadsheet_id = 'xxxxxxxxxxxx……...'
service = build( 'sheets'、 'v4'、credentials = creds)
sheet = service.spreadsheets()
覚えているように、Googleシートを作成してエディターレベルでロボットアカウントを承認するため、そのスプレッドシートに移動し、ページURLからシートIDをコピーして、このコードをSAMPLE_SPREADSHEET_ID値に貼り付けます。
ビデオデータ値をGoogleシートに追加します
だから今、物事はほとんど準備ができているでしょう。私たちがする必要があるのは、削り取られたビデオデータをGoogleシートに送ることです。
まず、CSVファイルの書き込みに関する前の章で覚えているかもしれないように、データを取得するセクションの後にコード行を作成します。これは、列にデータをフォーマットするためのフォーマットです。 CSV書き込み方法と同様に、変数を作成する必要もあります。しかし、ここでの違いは、それに従うべきオブジェクトと方法がないことです。そのため、Video50_Scrapeで名前の変数を作成すると言うなど、自分で作成する必要があります。
video50_scrape = [[channel_title、video_title、yt_link、vid_view、vid_like、vid_dislike、vid_favorite、vid_comment]]]]
次に、GoogleシートAPIリファレンスに移動し、データをGoogleシートに追加することを目指している場合、どのパラメーターと渡す必要があるかを確認します。
スプレッドシートの値からの追加でわかるように、私たちは渡す必要があります
スプレッドシートIDと範囲
プロジェクトオブジェクトに基づいて、データは書かれたスクリプトによって削られているため、「値入力オプション」も渡す必要があります。
また、「データオプションの挿入」も必要です。これは、前のものを上書きする新しいビデオデータを避けているためです。
最後になりましたが、列ごとにデータをフォーマットしているため、ボディを渡す必要があります。
そのため、updatesheet_requestと呼ばれる2つの変数とupdatesheet_responseを作成できます。 1つはデータを追加するためのもので、もう1つは更新シートを実行するためです。この方法は、他の人が論理を理解する方が良いです。
updatesheet_request = sheet.values()。append(spreadsheetid = sample_spreadsheet_id、range = "youtubers_ring_spotlight_camera_query!a2"、valueinputoption = "user_entered"、insertdataoption = "intersing_rows"
updatesheet_response = updateSheet_Request.execute()
GoogleシートAPIの使用制限
これで、Bをコマンドしようとすることができます。すべてのビデオフェッチされたデータがGoogleシートで自動的に更新されていることを喜んで確認できます。また、Q値を変更する必要があるだけで、ビデオデータは引き続き更新されます。必要に応じて、Pythonを介してもう1つの列を追加できます。これにより、使用するキーワードクエリが表示されます。このタスクは皆さんに終わらせます、私はあなたがすでにそれをすることができると確信しています。
最後に、GoogleシートAPIには使用制限があり、100秒あたり500リクエストの制限があるため、実行の頻度を制御する必要がある場合があります。または、APIの制限の処理方法に関する次の記事を参照することもできます。このセクションでは、Work Automation Collectionのセクションについて説明します。
Easy2Digital API- Googleシートでのデータ操作
スクリプトが複雑である可能性があり、スクリプトを更新してバグのオンとオフを修正する必要がある場合は、Easy2Digital YouTubeボットAPIを活用できます。次のようにトークンのエンドポイントは次のとおりです。
https://www.buyfromlo.com?token=&googlesheetid=&googlesheetjsonfeed =&sheettab =&range =&towhere
このAPIエンドポイントを使用することにより、次のように要素を必要とするだけです。
- Easy2Digitalトークン
- GoogleシートAPI JSONファイルデータ
- GoogleシートID
- シートタブ
- フェッチするシート値範囲(オプション)
- どのシートタブとセルにアップロードします
スクレイプされた結果は、上記の結果と同じです。
APIのマーケティングに関する詳細については、このページをご覧ください。
Easy2Digital APIとGoogleシートキーを使用したGoogleシートでのデータ操作の完全なPythonスクリプト
Easy2Digital APIとGoogle Sheetsキーを使用して、Googleシートでデータを操作するPythonスクリプトの無料Easy2DigitalトークンとFullバージョンのPythonスクリプトが必要な場合は、メッセージを追加してニュースレターを購読してください。すぐにメールボックスに。
- PayPal (paypal.me/Easy2digital)を通じて弊社チャンネルをサポートおよび寄付を行う
- Easy2Digital YouTubeチャンネルの登録と通知ベルをオンにする。
- Easy2Digital Facebookページをフォローしていいね!を押す
- ハッシュタグ#easy2digitalを使用して、ソーシャルネットワーク上で記事を共有する
- Easy2Digitalの最新記事、動画、割引コードを受け取るために、週刊ニュースレターに登録する
- www.patreon.com/louisludigitalを通じて、独占的な特典をお楽しみいただくための月額会員に登録する