From 470e41bcb72f99fb29d17c6e90d5c4f9a11f7fb9 Mon Sep 17 00:00:00 2001 From: Jason Dobry Date: Tue, 13 Sep 2016 18:58:11 -0700 Subject: [PATCH 1/3] Add some simple "quickstart" samples. --- bigquery/cloud-client/quickstart.py | 34 +++++++++++++++++++++++ datastore/api/quickstart.py | 35 +++++++++++++++++++++++ logging/cloud-client/quickstart.py | 36 ++++++++++++++++++++++++ pubsub/cloud-client/quickstart.py | 34 +++++++++++++++++++++++ storage/cloud-client/quickstart.py | 31 +++++++++++++++++++++ translate/cloud-client/quickstart.py | 37 +++++++++++++++++++++++++ translate/cloud-client/requirements.txt | 1 + 7 files changed, 208 insertions(+) create mode 100644 bigquery/cloud-client/quickstart.py create mode 100644 datastore/api/quickstart.py create mode 100644 logging/cloud-client/quickstart.py create mode 100644 pubsub/cloud-client/quickstart.py create mode 100644 storage/cloud-client/quickstart.py create mode 100644 translate/cloud-client/quickstart.py create mode 100644 translate/cloud-client/requirements.txt diff --git a/bigquery/cloud-client/quickstart.py b/bigquery/cloud-client/quickstart.py new file mode 100644 index 00000000000..6ac35fd1ecc --- /dev/null +++ b/bigquery/cloud-client/quickstart.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python + +# Copyright 2016 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# [START bigquery_quickstart] +# Imports the Google Cloud client library +from google.cloud import bigquery + +# Instantiates a client +bigquery_client = bigquery.Client() + +# The name for the new dataset +dataset_name = 'my_new_dataset' + +# Prepares the new dataset +dataset = bigquery_client.dataset(dataset_name) + +# Creates the new dataset +dataset.create() + +print('Dataset {} created'.format(dataset.name)) +# [END bigquery_quickstart] diff --git a/datastore/api/quickstart.py b/datastore/api/quickstart.py new file mode 100644 index 00000000000..cbdbf1b60f9 --- /dev/null +++ b/datastore/api/quickstart.py @@ -0,0 +1,35 @@ +#!/usr/bin/env python + +# Copyright 2016 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# [START datastore_quickstart] +# Imports the Google Cloud client library +from google.cloud import datastore + +# Instantiates a client +datastore_client = datastore.Client() + +# The kind of the entity to retrieve +kind = 'Task' +# The id of the entity to retrieve +id = 1234567890 +# The Datastore key for the entity +task_key = datastore_client.key(kind, id) + +# Retrieves the entity +entity = datastore_client.get(task_key) + +print('Got entity: {}'.format(entity.key.id)) +# [END datastore_quickstart] diff --git a/logging/cloud-client/quickstart.py b/logging/cloud-client/quickstart.py new file mode 100644 index 00000000000..a2b66a80b76 --- /dev/null +++ b/logging/cloud-client/quickstart.py @@ -0,0 +1,36 @@ +#!/usr/bin/env python + +# Copyright 2016 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# [START logging_quickstart] +# Imports the Google Cloud client library +from google.cloud import logging + +# Instantiates a client +logging_client = logging.Client() + +# The name of the log to write to +log_name = 'my-log' +# Selects the log to write to +logger = logging_client.logger(log_name) + +# The data to log +text = 'Hello, world!' + +# Writes the log entry +logger.log_text(text) + +print('Logged: {}'.format(text)) +# [END logging_quickstart] diff --git a/pubsub/cloud-client/quickstart.py b/pubsub/cloud-client/quickstart.py new file mode 100644 index 00000000000..b3247cd87b7 --- /dev/null +++ b/pubsub/cloud-client/quickstart.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python + +# Copyright 2016 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# [START pubsub_quickstart] +# Imports the Google Cloud client library +from google.cloud import pubsub + +# Instantiates a client +pubsub_client = pubsub.Client() + +# The name for the new topic +topic_name = 'my-new-topic' + +# Prepares the new topic +topic = pubsub_client.topic(topic_name) + +# Creates the new topic +topic.create() + +print('Topic {} created'.format(topic.name)) +# [END pubsub_quickstart] diff --git a/storage/cloud-client/quickstart.py b/storage/cloud-client/quickstart.py new file mode 100644 index 00000000000..c47cafca71d --- /dev/null +++ b/storage/cloud-client/quickstart.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python + +# Copyright 2016 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# [START storage_quickstart] +# Imports the Google Cloud client library +from google.cloud import storage + +# Instantiates a client +storage_client = storage.Client() + +# The name for the new bucket +bucket_name = 'my-new-bucket' + +# Creates the new bucket +bucket = storage_client.create_bucket(bucket_name) + +print('Bucket {} created'.format(bucket.name)) +# [END storage_quickstart] diff --git a/translate/cloud-client/quickstart.py b/translate/cloud-client/quickstart.py new file mode 100644 index 00000000000..9b8787574b1 --- /dev/null +++ b/translate/cloud-client/quickstart.py @@ -0,0 +1,37 @@ +#!/usr/bin/env python + +# Copyright 2016 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# [START translate_quickstart] +# Imports the Google Cloud client library +from google.cloud import translate + +# Your Translate API key +api_key = 'YOUR_API_KEY' + +# Instantiates a client +translate_client = translate.Client(api_key) + +# The text to translate +text = 'Hello, world!' +# The target language +target = 'ru' + +# Translates some text into Russian +translation = translate_client.translate(text, target_language=target) + +print('Text: {}'.format(text)) +print('Translation: {}'.format(translation['translatedText'].encode('utf-8'))) +# [END translate_quickstart] diff --git a/translate/cloud-client/requirements.txt b/translate/cloud-client/requirements.txt new file mode 100644 index 00000000000..1f8e21a1a8d --- /dev/null +++ b/translate/cloud-client/requirements.txt @@ -0,0 +1 @@ +google-cloud-translate==0.20.0 From 3aa6984cf93680e4140f5960d868f8e0acb3b417 Mon Sep 17 00:00:00 2001 From: Jason Dobry Date: Tue, 4 Oct 2016 21:12:06 -0700 Subject: [PATCH 2/3] Wrap quickstarts in methods. Add language and vision quickstarts. --- bigquery/cloud-client/quickstart.py | 31 ++++++++------ datastore/api/quickstart.py | 35 +++++++++------- language/cloud-client/quickstart.py | 38 +++++++++++++++++ language/cloud-client/requirements.txt | 1 + logging/cloud-client/quickstart.py | 35 +++++++++------- pubsub/cloud-client/quickstart.py | 31 ++++++++------ storage/cloud-client/quickstart.py | 27 +++++++----- translate/cloud-client/quickstart.py | 37 +++++++++------- vision/cloud-client/quickstart.py | 44 ++++++++++++++++++++ vision/cloud-client/requirements.txt | 1 + vision/cloud-client/resources/wakeupcat.jpg | Bin 0 -> 64892 bytes 11 files changed, 197 insertions(+), 83 deletions(-) create mode 100644 language/cloud-client/quickstart.py create mode 100644 language/cloud-client/requirements.txt create mode 100644 vision/cloud-client/quickstart.py create mode 100644 vision/cloud-client/requirements.txt create mode 100644 vision/cloud-client/resources/wakeupcat.jpg diff --git a/bigquery/cloud-client/quickstart.py b/bigquery/cloud-client/quickstart.py index 6ac35fd1ecc..34dcaaccadd 100644 --- a/bigquery/cloud-client/quickstart.py +++ b/bigquery/cloud-client/quickstart.py @@ -14,21 +14,26 @@ # See the License for the specific language governing permissions and # limitations under the License. -# [START bigquery_quickstart] -# Imports the Google Cloud client library -from google.cloud import bigquery +def run_quickstart(): + # [START bigquery_quickstart] + # Imports the Google Cloud client library + from google.cloud import bigquery -# Instantiates a client -bigquery_client = bigquery.Client() + # Instantiates a client + bigquery_client = bigquery.Client() -# The name for the new dataset -dataset_name = 'my_new_dataset' + # The name for the new dataset + dataset_name = 'my_new_dataset' -# Prepares the new dataset -dataset = bigquery_client.dataset(dataset_name) + # Prepares the new dataset + dataset = bigquery_client.dataset(dataset_name) -# Creates the new dataset -dataset.create() + # Creates the new dataset + dataset.create() -print('Dataset {} created'.format(dataset.name)) -# [END bigquery_quickstart] + print('Dataset {} created.'.format(dataset.name)) + # [END bigquery_quickstart] + + +if __name__ == '__main__': + run_quickstart() diff --git a/datastore/api/quickstart.py b/datastore/api/quickstart.py index cbdbf1b60f9..7e124b75a42 100644 --- a/datastore/api/quickstart.py +++ b/datastore/api/quickstart.py @@ -14,22 +14,27 @@ # See the License for the specific language governing permissions and # limitations under the License. -# [START datastore_quickstart] -# Imports the Google Cloud client library -from google.cloud import datastore +def run_quickstart(): + # [START datastore_quickstart] + # Imports the Google Cloud client library + from google.cloud import datastore -# Instantiates a client -datastore_client = datastore.Client() + # Instantiates a client + datastore_client = datastore.Client() -# The kind of the entity to retrieve -kind = 'Task' -# The id of the entity to retrieve -id = 1234567890 -# The Datastore key for the entity -task_key = datastore_client.key(kind, id) + # The kind of the entity to retrieve + kind = 'Person' + # The name/ID of the entity to retrieve + name = 'Bob' + # The Datastore key for the entity + task_key = datastore_client.key(kind, name) -# Retrieves the entity -entity = datastore_client.get(task_key) + # Retrieves the entity + entity = datastore_client.get(task_key) -print('Got entity: {}'.format(entity.key.id)) -# [END datastore_quickstart] + print('Fetched entity: {}'.format(entity.key.name)) + # [END datastore_quickstart] + + +if __name__ == '__main__': + run_quickstart() diff --git a/language/cloud-client/quickstart.py b/language/cloud-client/quickstart.py new file mode 100644 index 00000000000..7105ecb17f7 --- /dev/null +++ b/language/cloud-client/quickstart.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python + +# Copyright 2016 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +def run_quickstart(): + # [START language_quickstart] + # Imports the Google Cloud client library + from google.cloud import language + + # Instantiates a client + language_client = language.Client() + + # The text to analyze + text = 'Hello, world!' + document = language_client.document_from_text(text) + + # Detects the sentiment of the text + sentiment = document.analyze_sentiment() + + print('Text: {}'.format(text)) + print('Sentiment: {}, {}'.format(sentiment.polarity, sentiment.magnitude)) + # [END language_quickstart] + + +if __name__ == '__main__': + run_quickstart() diff --git a/language/cloud-client/requirements.txt b/language/cloud-client/requirements.txt new file mode 100644 index 00000000000..cc966c0ec05 --- /dev/null +++ b/language/cloud-client/requirements.txt @@ -0,0 +1 @@ +google-cloud-language==0.20.0 diff --git a/logging/cloud-client/quickstart.py b/logging/cloud-client/quickstart.py index a2b66a80b76..190f4c6e59c 100644 --- a/logging/cloud-client/quickstart.py +++ b/logging/cloud-client/quickstart.py @@ -14,23 +14,28 @@ # See the License for the specific language governing permissions and # limitations under the License. -# [START logging_quickstart] -# Imports the Google Cloud client library -from google.cloud import logging +def run_quickstart(): + # [START logging_quickstart] + # Imports the Google Cloud client library + from google.cloud import logging -# Instantiates a client -logging_client = logging.Client() + # Instantiates a client + logging_client = logging.Client() -# The name of the log to write to -log_name = 'my-log' -# Selects the log to write to -logger = logging_client.logger(log_name) + # The name of the log to write to + log_name = 'my-log' + # Selects the log to write to + logger = logging_client.logger(log_name) -# The data to log -text = 'Hello, world!' + # The data to log + text = 'Hello, world!' -# Writes the log entry -logger.log_text(text) + # Writes the log entry + logger.log_text(text) -print('Logged: {}'.format(text)) -# [END logging_quickstart] + print('Logged: {}'.format(text)) + # [END logging_quickstart] + + +if __name__ == '__main__': + run_quickstart() diff --git a/pubsub/cloud-client/quickstart.py b/pubsub/cloud-client/quickstart.py index b3247cd87b7..9a3a7afff33 100644 --- a/pubsub/cloud-client/quickstart.py +++ b/pubsub/cloud-client/quickstart.py @@ -14,21 +14,26 @@ # See the License for the specific language governing permissions and # limitations under the License. -# [START pubsub_quickstart] -# Imports the Google Cloud client library -from google.cloud import pubsub +def run_quickstart(): + # [START pubsub_quickstart] + # Imports the Google Cloud client library + from google.cloud import pubsub -# Instantiates a client -pubsub_client = pubsub.Client() + # Instantiates a client + pubsub_client = pubsub.Client() -# The name for the new topic -topic_name = 'my-new-topic' + # The name for the new topic + topic_name = 'my-new-topic' -# Prepares the new topic -topic = pubsub_client.topic(topic_name) + # Prepares the new topic + topic = pubsub_client.topic(topic_name) -# Creates the new topic -topic.create() + # Creates the new topic + topic.create() -print('Topic {} created'.format(topic.name)) -# [END pubsub_quickstart] + print('Topic {} created.'.format(topic.name)) + # [END pubsub_quickstart] + + +if __name__ == '__main__': + run_quickstart() diff --git a/storage/cloud-client/quickstart.py b/storage/cloud-client/quickstart.py index c47cafca71d..ce37e0018cd 100644 --- a/storage/cloud-client/quickstart.py +++ b/storage/cloud-client/quickstart.py @@ -14,18 +14,23 @@ # See the License for the specific language governing permissions and # limitations under the License. -# [START storage_quickstart] -# Imports the Google Cloud client library -from google.cloud import storage +def run_quickstart(): + # [START storage_quickstart] + # Imports the Google Cloud client library + from google.cloud import storage -# Instantiates a client -storage_client = storage.Client() + # Instantiates a client + storage_client = storage.Client() -# The name for the new bucket -bucket_name = 'my-new-bucket' + # The name for the new bucket + bucket_name = 'my-new-bucket' -# Creates the new bucket -bucket = storage_client.create_bucket(bucket_name) + # Creates the new bucket + bucket = storage_client.create_bucket(bucket_name) -print('Bucket {} created'.format(bucket.name)) -# [END storage_quickstart] + print('Bucket {} created.'.format(bucket.name)) + # [END storage_quickstart] + + +if __name__ == '__main__': + run_quickstart() diff --git a/translate/cloud-client/quickstart.py b/translate/cloud-client/quickstart.py index 9b8787574b1..c1cc55ce6d2 100644 --- a/translate/cloud-client/quickstart.py +++ b/translate/cloud-client/quickstart.py @@ -14,24 +14,29 @@ # See the License for the specific language governing permissions and # limitations under the License. -# [START translate_quickstart] -# Imports the Google Cloud client library -from google.cloud import translate +def run_quickstart(): + # [START translate_quickstart] + # Imports the Google Cloud client library + from google.cloud import translate -# Your Translate API key -api_key = 'YOUR_API_KEY' + # Your Translate API key + api_key = 'YOUR_API_KEY' -# Instantiates a client -translate_client = translate.Client(api_key) + # Instantiates a client + translate_client = translate.Client(api_key) -# The text to translate -text = 'Hello, world!' -# The target language -target = 'ru' + # The text to translate + text = 'Hello, world!' + # The target language + target = 'ru' -# Translates some text into Russian -translation = translate_client.translate(text, target_language=target) + # Translates some text into Russian + translation = translate_client.translate(text, target_language=target) -print('Text: {}'.format(text)) -print('Translation: {}'.format(translation['translatedText'].encode('utf-8'))) -# [END translate_quickstart] + print('Text: {}'.format(text)) + print('Translation: {}'.format(translation['translatedText'].encode('utf-8'))) + # [END translate_quickstart] + + +if __name__ == '__main__': + run_quickstart() diff --git a/vision/cloud-client/quickstart.py b/vision/cloud-client/quickstart.py new file mode 100644 index 00000000000..f9fe453a701 --- /dev/null +++ b/vision/cloud-client/quickstart.py @@ -0,0 +1,44 @@ +#!/usr/bin/env python + +# Copyright 2016 Google Inc. All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +def run_quickstart(): + # [START vision_quickstart] + import io + + # Imports the Google Cloud client library + from google.cloud import vision + + # Instantiates a client + vision_client = vision.Client() + + # The name of the image file to annotate + fileName = './resources/wakeupcat.jpg' + + # Loads the image into memory + with io.open(fileName, 'rb') as image_file: + image = vision_client.image(content=image_file.read()) + + # Performs label detection on the image file + labels = image.detect_labels() + + print('Labels:') + for label in labels: + print(label.description) + # [END vision_quickstart] + + +if __name__ == '__main__': + run_quickstart() diff --git a/vision/cloud-client/requirements.txt b/vision/cloud-client/requirements.txt new file mode 100644 index 00000000000..f549e6d149e --- /dev/null +++ b/vision/cloud-client/requirements.txt @@ -0,0 +1 @@ +google-cloud-vision==0.20.0 diff --git a/vision/cloud-client/resources/wakeupcat.jpg b/vision/cloud-client/resources/wakeupcat.jpg new file mode 100644 index 0000000000000000000000000000000000000000..139cf461ecae99515d8ff5c8f4d06a656d6f050e GIT binary patch literal 64892 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 literal 0 HcmV?d00001 From 118032e5f5a7fcc73a85e80f0ebb35541d71f7f6 Mon Sep 17 00:00:00 2001 From: Jon Wayne Parrott Date: Wed, 5 Oct 2016 09:55:49 -0700 Subject: [PATCH 3/3] Fix lint Change-Id: I5f1b0ff6396226aab54b0363d05e50cc3f49dea7 --- bigquery/cloud-client/quickstart.py | 29 +++++++++++----------- datastore/api/quickstart.py | 33 +++++++++++++------------ language/cloud-client/quickstart.py | 29 +++++++++++----------- logging/cloud-client/quickstart.py | 33 +++++++++++++------------ pubsub/cloud-client/quickstart.py | 29 +++++++++++----------- storage/cloud-client/quickstart.py | 25 ++++++++++--------- translate/cloud-client/quickstart.py | 36 ++++++++++++++------------- vision/cloud-client/quickstart.py | 37 ++++++++++++++-------------- 8 files changed, 130 insertions(+), 121 deletions(-) diff --git a/bigquery/cloud-client/quickstart.py b/bigquery/cloud-client/quickstart.py index 34dcaaccadd..2c9923f6eb8 100644 --- a/bigquery/cloud-client/quickstart.py +++ b/bigquery/cloud-client/quickstart.py @@ -14,26 +14,27 @@ # See the License for the specific language governing permissions and # limitations under the License. + def run_quickstart(): - # [START bigquery_quickstart] - # Imports the Google Cloud client library - from google.cloud import bigquery + # [START bigquery_quickstart] + # Imports the Google Cloud client library + from google.cloud import bigquery - # Instantiates a client - bigquery_client = bigquery.Client() + # Instantiates a client + bigquery_client = bigquery.Client() - # The name for the new dataset - dataset_name = 'my_new_dataset' + # The name for the new dataset + dataset_name = 'my_new_dataset' - # Prepares the new dataset - dataset = bigquery_client.dataset(dataset_name) + # Prepares the new dataset + dataset = bigquery_client.dataset(dataset_name) - # Creates the new dataset - dataset.create() + # Creates the new dataset + dataset.create() - print('Dataset {} created.'.format(dataset.name)) - # [END bigquery_quickstart] + print('Dataset {} created.'.format(dataset.name)) + # [END bigquery_quickstart] if __name__ == '__main__': - run_quickstart() + run_quickstart() diff --git a/datastore/api/quickstart.py b/datastore/api/quickstart.py index 7e124b75a42..ef99f8bcac0 100644 --- a/datastore/api/quickstart.py +++ b/datastore/api/quickstart.py @@ -14,27 +14,28 @@ # See the License for the specific language governing permissions and # limitations under the License. + def run_quickstart(): - # [START datastore_quickstart] - # Imports the Google Cloud client library - from google.cloud import datastore + # [START datastore_quickstart] + # Imports the Google Cloud client library + from google.cloud import datastore - # Instantiates a client - datastore_client = datastore.Client() + # Instantiates a client + datastore_client = datastore.Client() - # The kind of the entity to retrieve - kind = 'Person' - # The name/ID of the entity to retrieve - name = 'Bob' - # The Datastore key for the entity - task_key = datastore_client.key(kind, name) + # The kind of the entity to retrieve + kind = 'Person' + # The name/ID of the entity to retrieve + name = 'Bob' + # The Datastore key for the entity + task_key = datastore_client.key(kind, name) - # Retrieves the entity - entity = datastore_client.get(task_key) + # Retrieves the entity + entity = datastore_client.get(task_key) - print('Fetched entity: {}'.format(entity.key.name)) - # [END datastore_quickstart] + print('Fetched entity: {}'.format(entity.key.name)) + # [END datastore_quickstart] if __name__ == '__main__': - run_quickstart() + run_quickstart() diff --git a/language/cloud-client/quickstart.py b/language/cloud-client/quickstart.py index 7105ecb17f7..24f2ff4dea1 100644 --- a/language/cloud-client/quickstart.py +++ b/language/cloud-client/quickstart.py @@ -14,25 +14,26 @@ # See the License for the specific language governing permissions and # limitations under the License. + def run_quickstart(): - # [START language_quickstart] - # Imports the Google Cloud client library - from google.cloud import language + # [START language_quickstart] + # Imports the Google Cloud client library + from google.cloud import language - # Instantiates a client - language_client = language.Client() + # Instantiates a client + language_client = language.Client() - # The text to analyze - text = 'Hello, world!' - document = language_client.document_from_text(text) + # The text to analyze + text = 'Hello, world!' + document = language_client.document_from_text(text) - # Detects the sentiment of the text - sentiment = document.analyze_sentiment() + # Detects the sentiment of the text + sentiment = document.analyze_sentiment() - print('Text: {}'.format(text)) - print('Sentiment: {}, {}'.format(sentiment.polarity, sentiment.magnitude)) - # [END language_quickstart] + print('Text: {}'.format(text)) + print('Sentiment: {}, {}'.format(sentiment.polarity, sentiment.magnitude)) + # [END language_quickstart] if __name__ == '__main__': - run_quickstart() + run_quickstart() diff --git a/logging/cloud-client/quickstart.py b/logging/cloud-client/quickstart.py index 190f4c6e59c..19409c77611 100644 --- a/logging/cloud-client/quickstart.py +++ b/logging/cloud-client/quickstart.py @@ -14,28 +14,29 @@ # See the License for the specific language governing permissions and # limitations under the License. + def run_quickstart(): - # [START logging_quickstart] - # Imports the Google Cloud client library - from google.cloud import logging + # [START logging_quickstart] + # Imports the Google Cloud client library + from google.cloud import logging - # Instantiates a client - logging_client = logging.Client() + # Instantiates a client + logging_client = logging.Client() - # The name of the log to write to - log_name = 'my-log' - # Selects the log to write to - logger = logging_client.logger(log_name) + # The name of the log to write to + log_name = 'my-log' + # Selects the log to write to + logger = logging_client.logger(log_name) - # The data to log - text = 'Hello, world!' + # The data to log + text = 'Hello, world!' - # Writes the log entry - logger.log_text(text) + # Writes the log entry + logger.log_text(text) - print('Logged: {}'.format(text)) - # [END logging_quickstart] + print('Logged: {}'.format(text)) + # [END logging_quickstart] if __name__ == '__main__': - run_quickstart() + run_quickstart() diff --git a/pubsub/cloud-client/quickstart.py b/pubsub/cloud-client/quickstart.py index 9a3a7afff33..fdcb45003b8 100644 --- a/pubsub/cloud-client/quickstart.py +++ b/pubsub/cloud-client/quickstart.py @@ -14,26 +14,27 @@ # See the License for the specific language governing permissions and # limitations under the License. + def run_quickstart(): - # [START pubsub_quickstart] - # Imports the Google Cloud client library - from google.cloud import pubsub + # [START pubsub_quickstart] + # Imports the Google Cloud client library + from google.cloud import pubsub - # Instantiates a client - pubsub_client = pubsub.Client() + # Instantiates a client + pubsub_client = pubsub.Client() - # The name for the new topic - topic_name = 'my-new-topic' + # The name for the new topic + topic_name = 'my-new-topic' - # Prepares the new topic - topic = pubsub_client.topic(topic_name) + # Prepares the new topic + topic = pubsub_client.topic(topic_name) - # Creates the new topic - topic.create() + # Creates the new topic + topic.create() - print('Topic {} created.'.format(topic.name)) - # [END pubsub_quickstart] + print('Topic {} created.'.format(topic.name)) + # [END pubsub_quickstart] if __name__ == '__main__': - run_quickstart() + run_quickstart() diff --git a/storage/cloud-client/quickstart.py b/storage/cloud-client/quickstart.py index ce37e0018cd..9aff9b21492 100644 --- a/storage/cloud-client/quickstart.py +++ b/storage/cloud-client/quickstart.py @@ -14,23 +14,24 @@ # See the License for the specific language governing permissions and # limitations under the License. + def run_quickstart(): - # [START storage_quickstart] - # Imports the Google Cloud client library - from google.cloud import storage + # [START storage_quickstart] + # Imports the Google Cloud client library + from google.cloud import storage - # Instantiates a client - storage_client = storage.Client() + # Instantiates a client + storage_client = storage.Client() - # The name for the new bucket - bucket_name = 'my-new-bucket' + # The name for the new bucket + bucket_name = 'my-new-bucket' - # Creates the new bucket - bucket = storage_client.create_bucket(bucket_name) + # Creates the new bucket + bucket = storage_client.create_bucket(bucket_name) - print('Bucket {} created.'.format(bucket.name)) - # [END storage_quickstart] + print('Bucket {} created.'.format(bucket.name)) + # [END storage_quickstart] if __name__ == '__main__': - run_quickstart() + run_quickstart() diff --git a/translate/cloud-client/quickstart.py b/translate/cloud-client/quickstart.py index c1cc55ce6d2..ad5436767dd 100644 --- a/translate/cloud-client/quickstart.py +++ b/translate/cloud-client/quickstart.py @@ -14,29 +14,31 @@ # See the License for the specific language governing permissions and # limitations under the License. + def run_quickstart(): - # [START translate_quickstart] - # Imports the Google Cloud client library - from google.cloud import translate + # [START translate_quickstart] + # Imports the Google Cloud client library + from google.cloud import translate - # Your Translate API key - api_key = 'YOUR_API_KEY' + # Your Translate API key + api_key = 'YOUR_API_KEY' - # Instantiates a client - translate_client = translate.Client(api_key) + # Instantiates a client + translate_client = translate.Client(api_key) - # The text to translate - text = 'Hello, world!' - # The target language - target = 'ru' + # The text to translate + text = 'Hello, world!' + # The target language + target = 'ru' - # Translates some text into Russian - translation = translate_client.translate(text, target_language=target) + # Translates some text into Russian + translation = translate_client.translate(text, target_language=target) - print('Text: {}'.format(text)) - print('Translation: {}'.format(translation['translatedText'].encode('utf-8'))) - # [END translate_quickstart] + print('Text: {}'.format(text)) + print('Translation: {}'.format( + translation['translatedText'].encode('utf-8'))) + # [END translate_quickstart] if __name__ == '__main__': - run_quickstart() + run_quickstart() diff --git a/vision/cloud-client/quickstart.py b/vision/cloud-client/quickstart.py index f9fe453a701..68348799180 100644 --- a/vision/cloud-client/quickstart.py +++ b/vision/cloud-client/quickstart.py @@ -14,31 +14,32 @@ # See the License for the specific language governing permissions and # limitations under the License. + def run_quickstart(): - # [START vision_quickstart] - import io + # [START vision_quickstart] + import io - # Imports the Google Cloud client library - from google.cloud import vision + # Imports the Google Cloud client library + from google.cloud import vision - # Instantiates a client - vision_client = vision.Client() + # Instantiates a client + vision_client = vision.Client() - # The name of the image file to annotate - fileName = './resources/wakeupcat.jpg' + # The name of the image file to annotate + fileName = './resources/wakeupcat.jpg' - # Loads the image into memory - with io.open(fileName, 'rb') as image_file: - image = vision_client.image(content=image_file.read()) + # Loads the image into memory + with io.open(fileName, 'rb') as image_file: + image = vision_client.image(content=image_file.read()) - # Performs label detection on the image file - labels = image.detect_labels() + # Performs label detection on the image file + labels = image.detect_labels() - print('Labels:') - for label in labels: - print(label.description) - # [END vision_quickstart] + print('Labels:') + for label in labels: + print(label.description) + # [END vision_quickstart] if __name__ == '__main__': - run_quickstart() + run_quickstart()