Tutorial de análise de sentimento

Público-alvo

Este tutorial foi criado para permitir que você comece a explorar e desenvolver aplicativos com a API Google Cloud Natural Language. Ele se destina a pessoas familiarizadas com a programação básica, ou seja, é possível acompanhá-lo mesmo se não tiver muito conhecimento. Após concluir este tutorial, você estará apto a usar a Documentação de referência para criar seus aplicativos básicos.

Neste tutorial, vamos trabalhar com um aplicativo da API Natural Language usando o código Python. O objetivo aqui não é explicar as bibliotecas de cliente Python, mas explicar como fazer chamadas para a API Natural Language. Aplicativos em Java e Node.js são basicamente similares. Para outras linguagens, consulte as Amostras da Natural Language API, inclusive a deste tutorial.

Pré-requisitos

Os pré-requisitos para este tutorial são:

Como analisar sentimentos no documento

Este tutorial orienta você em um aplicativo básico da API Natural Language, usando uma solicitação analyzeSentiment, que realiza a análise de sentimento no texto. A análise de sentimento tenta determinar a atitude geral (positiva ou negativa) e é representada por valores numéricos score e magnitude. (Para mais informações sobre esses conceitos, consulte Princípios básicos da Natural Language).

Primeiro, mostraremos todo o código. Retiramos grande parte dos comentários desse código para você ver como ele é curto. Forneceremos mais comentários à medida que analisarmos o código.

Para mais informações sobre como instalar e usar a biblioteca de cliente do Google Cloud Natural Language para Python, consulte Bibliotecas de cliente da API Natural Language.
"""Demonstrates how to make a simple call to the Natural Language API."""

import argparse

from google.cloud 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
        print(f"Sentence {index} has a sentiment score of {sentence_sentiment}")

    print(f"Overall Sentiment: score of {score} with magnitude of {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) as review_file:
        # Instantiates a plain text document.
        content = review_file.read()

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

    # Print the results
    print_result(annotations)




if __name__ == "__main__":
    parser = argparse.ArgumentParser(
        description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter
    )
    parser.add_argument(
        "movie_review_filename"