基于科大讯飞api做文本情感分析详细教程

本文将引导你逐步使用科大讯飞的API进行文本情感分析。首先,我们将介绍如何注册并获取API密钥,接着讲解如何在Python环境中安装必要的库。然后,我们将展示如何通过API发送请求,解析返回的情感分析结果,并给出实际示例。最后,我们将探讨情感分析在实际应用中的价值和局限性。
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import time
import urllib.request
import urllib.parse
import json
import hashlib
import base64
import re


def xinxi(url,x_appid,api_key):
    # 参数检查
    try:
        if len(str(url))!=0:
            return url,x_appid,api_key
    except:
          print("输入错误")


def input_1():
    # 输入判断
    text=input("请输入一句话:")
    if len(text)>0:
        return text
    else:
        print("请重新输入!")

def main(TEXT):
    # 在线解析
    body = urllib.parse.urlencode({'text': TEXT}).encode('utf-8')
    param = {"type": "dependent"}
    x_param = base64.b64encode(json.dumps(param).replace(' ', '').encode('utf-8'))
    x_time = str(int(time.time()))
    x_checksum = hashlib.md5(api_key.encode('utf-8') + str(x_time).encode('utf-8') + x_param).hexdigest()
    x_header = {'X-Appid': x_appid,
                'X-CurTime': x_time,
                'X-Param': x_param,
                'X-CheckSum': x_checksum}
    req = urllib.request.Request(url, body, x_header)
    result = urllib.request.urlopen(req)
    result = str(result.read().decode('utf-8'))
    print(result)
    result = re.findall(".*%s(.*)%s.*"%("score","sentiment"),result)[0]
    result=result.split(":")[1].split(",")[0]
    print(TEXT,result)

if __name__ == '__main__':

    # 接口地址
    url = "https://ltpapi.xfyun.cn/v2/sa"
    # 开放平台应用ID
    x_appid = "28bdecd4"
    # 开放平台应用接口秘钥
    api_key = "5d7605d47f8200a783a8a9e332fb18dd"
    url, x_appid, api_key=xinxi(url,x_appid,api_key)
    i=0
    while i<2:
        TEXT=input_1()
        main(TEXT)
        i+=1
# 示例输入:数学考的好差啊 不开心   今天的阳光很好 天气好!

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员奇奇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值