~~ Verstehe die Gefühle von Menschen, die zittern, weil sie sich treffen wollen ~~
Emotionale Analyse aus den Texten Ist es ein helles Lied? Ist es ein trauriges Lied? Ich möchte beurteilen.
Es wäre großartig, wenn wir mehrdeutige Suchvorgänge wie helle und traurige Songs in Musikvertriebsdiensten durchführen könnten. Dieses Jahr ist ein schwieriges Jahr und es ist nicht gut, also gebe ich mein Bestes, um helle Songs zu hören
COTOHA API Python 3.8.1
Das Folgende wurde bereits in Rekochok kategorisiert, daher habe ich ein Lied aus ihnen als mein Hobby ausgewählt.
Hört der Kaktus in der emotionalen Analyse auf zu tanzen? Ich durfte mich beziehen.
top/
├ file/
│ ├ input.txt (Songtexte zu analysieren)
│ └ output.csv (Ausgabeergebnis)
├ config.ini
└ cotoha_sentiment.py
cotoha_sentiment.py
# -*- coding:utf-8 -*-
import os
import urllib.request
import json
import configparser
import codecs
import csv
class CotohaApi:
def __init__(self, client_id, client_secret, developer_api_base_url, access_token_publish_url):
self.client_id = client_id
self.client_secret = client_secret
self.developer_api_base_url = developer_api_base_url
self.access_token_publish_url = access_token_publish_url
self.getAccessToken()
def getAccessToken(self):
url = self.access_token_publish_url
headers={
"Content-Type": "application/json;charset=UTF-8"
}
data = {
"grantType": "client_credentials",
"clientId": self.client_id,
"clientSecret": self.client_secret
}
data = json.dumps(data).encode()
req = urllib.request.Request(url, data, headers)
res = urllib.request.urlopen(req)
res_body = res.read()
res_body = json.loads(res_body)
self.access_token = res_body["access_token"]
#Emotionsanalyse-API
def sentiment(self, sentence):
url = self.developer_api_base_url + "nlp/v1/sentiment"
headers={
"Authorization": "Bearer " + self.access_token,
"Content-Type": "application/json;charset=UTF-8",
}
data = {
"sentence": sentence
}
data = json.dumps(data).encode()
req = urllib.request.Request(url, data, headers)
try:
res = urllib.request.urlopen(req)
except urllib.request.HTTPError as e:
print ("<Error> " + e.reason)
res_body = res.read()
res_body = json.loads(res_body)
return res_body
if __name__ == '__main__':
APP_ROOT = os.path.dirname(os.path.abspath( __file__)) + "/"
# config.Holen Sie sich den Wert von ini
config = configparser.ConfigParser()
config.read(APP_ROOT + "config.ini")
CLIENT_ID = config.get("COTOHA API", "Developer Client id")
CLIENT_SECRET = config.get("COTOHA API", "Developer Client secret")
DEVELOPER_API_BASE_URL = config.get("COTOHA API", "Developer API Base URL")
ACCESS_TOKEN_PUBLISH_URL = config.get("COTOHA API", "Access Token Publish URL")
cotoha_api = CotohaApi(CLIENT_ID, CLIENT_SECRET, DEVELOPER_API_BASE_URL, ACCESS_TOKEN_PUBLISH_URL)
# file/infile.Holen Sie sich den zu analysierenden Satz aus txt
checkpath = 'file/input.txt'
song_data = open(checkpath, "r", encoding='utf-8')
output_file = open('file/output.csv', 'w')
writer = csv.writer(output_file, lineterminator='\n') #Zeilenvorschubcode (\n) angegeben ist
sentence = song_data.readline()
while sentence:
print(sentence.strip())
#API-Ausführung
result = cotoha_api.sentiment(sentence)
score = result["result"]["score"]
print(score)
sentiment = result["result"]["sentiment"]
print(sentiment)
one_row = [score,sentiment]
writer.writerow(one_row) #Passliste
sentence = song_data.readline()
song_data.close()
output_file.close()
Ich möchte mich treffen, ich möchte mich treffen, ich zittere
Fühle so weit du denkst
Sag es mir noch einmal, auch wenn es eine Lüge ist
Wie an diesem Tag"ich liebe dich"Was ...
…
Morgen kann ich dich mehr lieben als heute
Ich mag es immer noch so sehr, aber ich kann es nicht in Worte fassen
Die Tage, die du mir gegeben hast, häuften sich und starben Die Tage, an denen zwei Menschen "Flugbahn" gingen
…
Ziemlich positives Lied
Wenn in deinen Tränen ein schwaches Licht ist
Vor dir
Ich spreche vom Aufwärmen
…
SPYAIR 「BEAUTIFUL DAYS」
Ich kann es positiver ändern. Lassen Sie uns so glauben
Wenn dich jemand auslacht, werde ich nicht lachen
Ein Neuanfang Jeder kann glänzen
Mit Angst und Erwartungen Oh, versuchen Sie es selbst
…
Viele der Träume, die ich gezeichnet habe, werden nicht wahr
Ich hasse mich, wenn ich gute Leute beneide
Einige Nächte werden wahrscheinlich von einem leichten Schlaf zerquetscht
…
Gut negativ
Auf Wiedersehen steckte in meinem Rachen
Ich sagte Danke wie Husten
Das nächste Wort ist, selbst wenn Sie irgendwo nach einer Tasche suchen
…
~~ Ich kann die Gefühle von Menschen nicht verstehen, die zittern, weil sie sich treffen wollen ~~
Diese emotionale Analyse wurde Zeile für Zeile durchgeführt, Ich denke, dass die Ergebnisse aufgrund der Reihenfolge der Wörter voreingenommen sind. Ich denke, dass genauere Ergebnisse erzielt werden, wenn die Körnung der zu analysierenden Texte feiner wird, also werde ich es versuchen, wenn ich Zeit habe.