Description
Google is a library for operating with Google API endpoints.
Usage requires the following steps:
- Create a GCP project
- Create a service account key file (JSON) and save it to a place the robot can use it
- Enable APIs
- Install rpaframework[google]
Google authentication
Authentication for Google is set with service credentials JSON file which can be given to the library in three different ways.
- Method 1 as environment variables,
GOOGLE_APPLICATION_CREDENTIALS
with path to JSON file.
- Method 2 as keyword parameter to
Init Storage Client
for example.
- Method 3 as Robocloud vault secret. The vault name and secret key name needs to be given in library init
or with keyword
Set Robocloud Vault
. Secret value should contain JSON file contents.
Method 1. service credentials using environment variable
*** Settings ***
Library RPA.Cloud.Google
*** Tasks ***
Init Google services
# NO parameters for Vision Client, expecting to get JSON
# with GOOGLE_APPLICATION_CREDENTIALS environment variable
Init Vision Client
Method 2. service credentials with keyword parameter
*** Settings ***
Library RPA.Cloud.Google
*** Tasks ***
Init Google services
Init Speech To Text Client /path/to/service_credentials.json
Method 3. setting Robocloud Vault in the library init
*** Settings ***
Library RPA.Cloud.Google
... robocloud_vault_name=googlecloud
... robocloud_vault_secret_key=servicecreds
*** Tasks ***
Init Google services
Init Storage Client use_robocloud_vault=${TRUE}
Method 3. setting Robocloud Vault with keyword
*** Settings ***
Library RPA.Cloud.Google
*** Tasks ***
Init Google services
Set Robocloud Vault vault_name=googlecloud vault_secret_key=servicecreds
Init Storage Client use_robocloud_vault=${TRUE}
Requirements
Due to number of dependencies related to Google Cloud services this library has been set as
an optional package for rpaframework
.
This can be installed by opting in to the google dependency:
pip install rpaframework[google]
Examples
Robot Framework
*** Settings ***
Library RPA.Cloud.Google
*** Variables ***
${SERVICE CREDENTIALS} ${/}path${/}to${/}service_credentials.json
${BUCKET_NAME} testbucket12213123123
*** Tasks ***
Upload a file into a new storage bucket
[Setup] Init Storage Client ${SERVICE CREDENTIALS}
Create Bucket ${BUCKET_NAME}
Upload File ${BUCKET_NAME} ${/}path${/}to${/}file.pdf myfile.pdf
@{files} List Files ${BUCKET_NAME}
FOR ${file} IN @{files}
Log ${file}
END
Python
from RPA.Cloud.Google import Google
library = Google
service_credentials = '/path/to/service_credentials.json'
library.init_vision_client(service_credentials)
library.init_text_to_speech(service_credentials)
response = library.detect_text('imagefile.png', 'result.json')
library.synthesize_speech('I want this said aloud', target_file='said.mp3')
API Documentation
- Robot Framework API
- Python module API