「这是我参与2022首次更文挑战的第7天,活动详情查看:2022首次更文挑战」
# 1.准备工作
1.注册百度账号,登录百度智能云,点击总览选择自然语言处理,创建应用(创建选项认真阅读,填写)
创建好应用会生成相应的AppID API Key Secret Key
2.要调用百度API,就要获得权限,利用获取到的API Key Secret Key去获取Access Token
获取的地址
https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=API key&client_secret=Secret Key&
访问这个地址,获得Access Token(但是Access Token 有一个有效期 超过有效期则调用api将会不成功)
expires_in: Access Token的有效期(秒为单位,一般为1个月)
总结:要调用API 需要a登录--b创建应用--c获得API Key 和Secret Key--d访问授权地址获得Access Token
# 2.调用API测试(简单的例子测试)
利用python调用百度api测试(pyhon直接官网下载,编辑器使用的是其自带的编辑器:IDLE)
做最简单的调用:保存Access Token调用百度API
情感倾向分析:
HTTP方法: POST 请求URL: https://aip.baidubce.com/rpc/2.0/nlp/v1/sentiment_classify
参数:access_token(通过API Key和Secret Key获取的access_token)
最简单的例子:可以直接使用(编辑器:IDLE)每一行有相应的解析:
import re
import requests
import json
def get_emotion( data):
# 定义百度API情感分析的token值和URL值
token = '24.bcc989b57db903cc1189346275b7a372.2592000.1604971755.282335-22803254'
url = 'https://aip.baidubce.com/rpc/2.0/nlp/v1/sentiment_classify?charset=UTF-8&access_token={}'.format(token)
new_each = {'text': data } # 将文本数据保存在变量new_each中,data的数据类型为string
new_each = json.dumps(new_each)
res=requests.post(url,data=new_each) # 利用URL请求百度情感分析API
res_text = res.text # 保存分析得到的结果,以string格式保存
print("content: ", res_text)
result = res_text.find('items') # 查找得到的结果中是否有items这一项
positive = 1
if (result != -1): # 如果结果不等于-1,则说明存在items这一项
json_data = json.loads(res.text)
negative = (json_data['items'][0]['negative_prob']) # 得到消极指数值
positive = (json_data['items'][0]['positive_prob']) # 得到积极指数值
print("positive:",positive)
print("negative:",negative)
if (positive > negative): # 如果积极大于消极,则返回2
return 2
elif (positive == negative): # 如果消极等于积极,则返回1
return 1
else:
return 0 # 否则,返回0
else:
return 1
def main():
txt1="有些时候,宇宙似乎是有意使一些事情变得如此有趣。科学家们发现了一个“π行星”,它的大小与我们的地球相仿,距离我们大约185光年"
print("txt1测试结果:",get_emotion(txt1))
if __name__ == "__main__":
main()
运行的结果:
后面我将继续分享 通过网址抓取网页信息分析情感倾向 (文章来自我的博客内容)