Analyze sentiment app

A basic Natural Language API application that performs sentiment analysis on text.

Code sample


"""Demonstrates how to make a simple call to the Natural Language API."""

import argparse

from import language_v1

def print_result(annotations):
    score = annotations.document_sentiment.score
    magnitude = annotations.document_sentiment.magnitude

    for index, sentence in enumerate(annotations.sentences):
        sentence_sentiment = sentence.sentiment.score
            "Sentence {} has a sentiment score of {}".format(index, sentence_sentiment)

        "Overall Sentiment: score of {} with magnitude of {}".format(score, magnitude)
    return 0

def analyze(movie_review_filename):
    """Run a sentiment analysis request on text within a passed filename."""
    client = language_v1.LanguageServiceClient()

    with open(movie_review_filename, "r") as review_file:
        # Instantiates a plain text document.
        content =

    document = language_v1.Document(content=content, type_=language_v1.Document.Type.PLAIN_TEXT)
    annotations = client.analyze_sentiment(request={'document': document})

    # Print the results

if __name__ == "__main__":
    parser = argparse.ArgumentParser(
        description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter
        help="The filename of the movie review you'd like to analyze.",
    args = parser.parse_args()


What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser