Inspecte un fichier stocké dans Cloud Storage et identifie l'opinion émotionnelle dominante dans le texte.
En savoir plus
Pour obtenir une documentation détaillée incluant cet exemple de code, consultez les articles suivants :
Exemple de code
Go
func analyzeSentimentFromGCS(ctx context.Context, gcsURI string) (*languagepb.AnalyzeSentimentResponse, error) {
return client.AnalyzeSentiment(ctx, &languagepb.AnalyzeSentimentRequest{
Document: &languagepb.Document{
Source: &languagepb.Document_GcsContentUri{
GcsContentUri: gcsURI,
},
Type: languagepb.Document_PLAIN_TEXT,
},
})
}
Java
// Instantiate the Language client com.google.cloud.language.v1.LanguageServiceClient
try (LanguageServiceClient language = LanguageServiceClient.create()) {
Document doc =
Document.newBuilder().setGcsContentUri(gcsUri).setType(Type.PLAIN_TEXT).build();
AnalyzeSentimentResponse response = language.analyzeSentiment(doc);
Sentiment sentiment = response.getDocumentSentiment();
if (sentiment == null) {
System.out.println("No sentiment found");
} else {
System.out.printf("Sentiment magnitude : %.3f\n", sentiment.getMagnitude());
System.out.printf("Sentiment score : %.3f\n", sentiment.getScore());
}
return sentiment;
}
Node.js
// Imports the Google Cloud client library
const language = require('@google-cloud/language');
// Creates a client
const client = new language.LanguageServiceClient();
/**
* TODO(developer): Uncomment the following lines to run this code
*/
// const bucketName = 'Your bucket name, e.g. my-bucket';
// const fileName = 'Your file name, e.g. my-file.txt';
// Prepares a document, representing a text file in Cloud Storage
const document = {
gcsContentUri: `gs://${bucketName}/${fileName}`,
type: 'PLAIN_TEXT',
};
// Detects the sentiment of the document
const [result] = await client.analyzeSentiment({document});
const sentiment = result.documentSentiment;
console.log('Document sentiment:');
console.log(` Score: ${sentiment.score}`);
console.log(` Magnitude: ${sentiment.magnitude}`);
const sentences = result.sentences;
sentences.forEach(sentence => {
console.log(`Sentence: ${sentence.text.content}`);
console.log(` Score: ${sentence.sentiment.score}`);
console.log(` Magnitude: ${sentence.sentiment.magnitude}`);
});
PHP
use Google\Cloud\Language\V1\Document;
use Google\Cloud\Language\V1\Document\Type;
use Google\Cloud\Language\V1\LanguageServiceClient;
/**
* @param string $uri The cloud storage object to analyze (gs://your-bucket-name/your-object-name)
*/
function analyze_sentiment_from_file(string $uri): void
{
$languageServiceClient = new LanguageServiceClient();
// Create a new Document, pass GCS URI and set type to PLAIN_TEXT
$document = (new Document())
->setGcsContentUri($uri)
->setType(Type::PLAIN_TEXT);
// Call the analyzeSentiment function
$response = $languageServiceClient->analyzeSentiment($document);
$document_sentiment = $response->getDocumentSentiment();
// Print document information
printf('Document Sentiment:' . PHP_EOL);
printf(' Magnitude: %s' . PHP_EOL, $document_sentiment->getMagnitude());
printf(' Score: %s' . PHP_EOL, $document_sentiment->getScore());
printf(PHP_EOL);
$sentences = $response->getSentences();
foreach ($sentences as $sentence) {
printf('Sentence: %s' . PHP_EOL, $sentence->getText()->getContent());
printf('Sentence Sentiment:' . PHP_EOL);
$sentiment = $sentence->getSentiment();
if ($sentiment) {
printf('Entity Magnitude: %s' . PHP_EOL, $sentiment->getMagnitude());
printf('Entity Score: %s' . PHP_EOL, $sentiment->getScore());
}
print(PHP_EOL);
}
}
Python
from google.cloud import language_v1
def sample_analyze_sentiment(gcs_content_uri):
"""
Analyzing Sentiment in text file stored in Cloud Storage
Args:
gcs_content_uri Google Cloud Storage URI where the file content is located.
e.g. gs://[Your Bucket]/[Path to File]
"""
client = language_v1.LanguageServiceClient()
# gcs_content_uri = 'gs://cloud-samples-data/language/sentiment-positive.txt'
# Available types: PLAIN_TEXT, HTML
type_ = language_v1.Document.Type.PLAIN_TEXT
# Optional. If not specified, the language is automatically detected.
# For list of supported languages:
# https://cloud.google.com/natural-language/docs/languages
language = "en"
document = {
"gcs_content_uri": gcs_content_uri,
"type_": type_,
"language": language,
}
# Available values: NONE, UTF8, UTF16, UTF32
encoding_type = language_v1.EncodingType.UTF8
response = client.analyze_sentiment(
request={"document": document, "encoding_type": encoding_type}
)
# Get overall sentiment of the input document
print("Document sentiment score: {}".format(response.document_sentiment.score))
print(
"Document sentiment magnitude: {}".format(response.document_sentiment.magnitude)
)
# Get sentiment for all sentences in the document
for sentence in response.sentences:
print("Sentence text: {}".format(sentence.text.content))
print("Sentence sentiment score: {}".format(sentence.sentiment.score))
print("Sentence sentiment magnitude: {}".format(sentence.sentiment.magnitude))
# Get the language of the text, which will be the same as
# the language specified in the request or, if not specified,
# the automatically-detected language.
print("Language of the text: {}".format(response.language))
Étapes suivantes
Pour rechercher et filtrer des exemples de code pour d'autres produits Google Cloud, consultez l'exemple de navigateur Google Cloud.