操作步骤https://cloud.tencent.com/developer/article/2540635

ACESS Token获取教程:https://ai.baidu.com/ai-doc/REFERENCE/Ck3dwjhhu

文本情感分析API使用教程:https://ai.baidu.com/ai-doc/NLP/zk6z52hds

import json

import requests
import time


class BdApi():

    def __init__(self):
        self.access_token = ""
        self.url = "https://aip.baidubce.com"

    def baidu_api(self):
        api_key = "o2yvAN3FWQAnR61Or7uh2HDp"
        secret_key = 'vxw8agyqx4szz4j7t6bkKR1sgACURHpt'
        token_url = "https://aip.baidubce.com/oauth/2.0/token"

        url = f"{token_url}?grant_type=client_credentials&client_id={api_key}&client_secret={secret_key}"

        response = requests.post(url, headers={'Content-Type': 'application/json'})
        data = response.json()
        self.access_token = data['access_token']
        print(f"成功获取access_token: {self.access_token}")

    def sentiment_analysis(self, text):
        url = f"{self.url}/rpc/2.0/nlp/v1/sentiment_classify?charset=UTF-8&access_token={self.access_token}"

        headers = {
            'Content-Type': 'application/json',
        }

        payload = {
            "text": text
        }

        response = requests.post(url, headers=headers, json=payload)
        result = response.json()
        return result


if __name__ == '__main__':
    api = BdApi()
    api.baidu_api()

    test_texts = [
        "这个产品非常好用,我很满意!",
        "质量太差了,完全不值得购买。",
        "服务态度不错,解决问题很快。",
        "等待时间太长,体验很差。",
        "价格合理,性价比很高。",
        "包装破损,产品有瑕疵。",
        "物流速度很快,第二天就收到了。",
        "客服态度恶劣,很不专业。",
        "功能齐全,操作简单方便。",
        "经常出现故障,稳定性差。",
        "设计美观,使用舒适。",
        "售后服务响应慢。",
        "性能强劲,运行流畅。",
        "存在安全隐患,不推荐使用。",
        "用户体验很好,细节考虑周到。"
    ]

    print(f"开始测试 {len(test_texts)} 条文本的情感分析...")
    print("=" * 50)

    for i, text in enumerate(test_texts, 1):

        result = api.sentiment_analysis(text)
        print(json.dumps(result, ensure_ascii=False, indent=2))


    print("\n" + "=" * 50)
    print("所有文本分析完成!")

更多推荐