文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

python 利用百度API进行淘宝评论关键词提取

2024-04-02 19:55

关注

利用百度API自然语言处理技术中的评论观点抽取方面,对淘宝购物的评论进行分析,把关键词进行提取,方便买家快速了解该商品的相关特点,具体实现过程如下:

1、创建相关新应用

首先,需要登录百度AI平台,创建一个关于自然语言处理技术的应用(领取免费额度),获得AppID、API Key和Secret Key如下:

然后下载Python的SDK,然后可以通过阅读API的使用手册和自然语言处理技术的观点抽取相关案例:

2、获取Access Token

使用百度API时需要先获取Access Token,并且需要用到上一步获取的参数API Key和Secret Key,在百度给出的使用说明中,建议用POST的方式对URL进行请求来获取access_token,同时可以加入Header,该方式支持UTF-8编码,具体实现代码如下:


import json
import time
import requests
from urllib.request import urlopen

#定义获取token函数
def get_token():
  req = Request(Token_url)
  req.add_header('Content-Type', 'application/json; charset=UTF-8')
  try:
    f = urlopen(req,timeout=5)
    result_str = f.read().decode('utf-8')
  except URLError as err:
    print(err)
  result = json.loads(result_str)
  #返回Access Token字符串
  return result['access_token']

3、分析评论并进行观点抽取

在获取Access Token后就可以使用百度API对评论进行分析并抽取关键词。在使用说明中,调用API时需要输入参数text和type,其中text为需要分析的文本,而type分成了13各类别,具体取值说明如下:

因为本文分析的是淘宝购物评论文本数据,所以该参数取值选择了12。其次,返回格式需要指定输入为UTF-8编码,对于调用后返回的参数,本文用到了prop、adj和sentiment三个参数,解释如下:

具体实现代码如下:


def analysis_comment(host,comment):
  #定义分析类别(购物)
  data = json.dumps(
    {
      "text":comment,
      "type":12
    })
    
  request = Request(url=host,data=data.encode('utf-8'))
  request.add_header('Content-Type', 'application/json; charset=UTF-8')
  response = urlopen(request)
  content = response.read().decode('utf-8')
  rdata = json.loads(content)

  print("--------------------------------------------------------------")
  print("评论:")
  print("  " + comment)
  print("\n评论关键字:")
  #把积极、中性、消极关键词分类出来并打印
  for item in rdata['items']:
    if item['sentiment'] == 2:
      print(u"  积极的评论关键词:" + item['prop'] + item['adj'])
    if item['sentiment'] == 1:
      print(u"  中性的评论关键词:" + item['prop'] + item['adj'])
    if item['sentiment'] == 0:
      print(u"  消极的评论关键词:" + item['prop'] + item['adj'])

4、运行结果

在对上述函数进行定义后,运行改代码,调用函数:


if __name__ == '__main__':
  #定义访问url(API Key和Secret Key换成自己的)
  Comment_url = "https://aip.baidubce.com/rpc/2.0/nlp/v2/comment_tag"
  Token_url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=your_API_Key&client_secret=your_Secret_Key"

  A_t = get_token()
  host = Comment_url + "?charset=UTF-8&access_token="+A_t
  
  comment1 = {"text":"版型不错,颜色很好看,面料非常舒服而且厚度适中"}
  comment2 = {"text":"上身效果一般,做工也一般,会有点起球,没有想象中好"}
  comment3 = {"text":"设计做工一点都不好,袖子特别长,衣服比例设计非常差,性价比不高"}
  comment1 = comment1["text"]
  comment2 = comment2["text"]
  comment3 = comment3["text"]
  
  analysis_comment(host,comment1)
  analysis_comment(host,comment2)
  analysis_comment(host,comment3)

运行结果如下:

然而,从结果中可以看出,在第二句评论中,“一般”这个词应该定义为中性,而该模型将其定义为消极,说明该模型在一定程度上仍存在一些瑕疵,这也是后期需要改进的地方。

以上就是python 利用百度API进行淘宝评论关键词提取的详细内容,更多关于python 淘宝评论关键词提取的资料请关注编程网其它相关文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯