1. 程式人生 > 實用技巧 >對python藉助百度雲API對評論進行觀點抽取的方法

對python藉助百度雲API對評論進行觀點抽取的方法

前言
本文的文字及圖片來源於網路,僅供學習、交流使用,不具有任何商業用途,如有問題請及時聯絡我們以作處理。

PS:如有需要Python學習資料的小夥伴可以加下Python快樂交流群:1136201545

通過百度雲API介面抽取得到產品評論的觀點,也掠去了很多評論中無用的內容以及符號,為後續進行文字主題挖掘或者規則的提取提供基礎。

工具

1、百度雲賬號,申請應用介面(自然語言處理)

2、python3.5

以下是百度介面提供的說明:

我們使用到的可選值是13,kindle屬於3C產品。

下面是程式碼示例:

from aip import AipNlp
import csv
import pandas as pd
from pandas.core.frame import DataFrame
'''
想要學習Python?Python學習交流群:1004391443滿足你的需求,資料都已經上傳群檔案,可以自行下載!
'''
""" 你的 APPID AK SK """
APP_ID = '********'
API_KEY = '********'
SECRET_KEY = '********'
client = AipNlp(APP_ID, API_KEY, SECRET_KEY)
 
# 匯入評論資料檔案,並找到第13列(12行)的評論內容提取出來
def output():
 urls = []
 with open('E:\\tb_iphone8.csv', "r") as f:
  reader = csv.reader(f)
  for row in reader:
   urls.append(row[12])
 return urls
 
# 通過百度雲提供的API對評論觀點進行提取
def commentTag():
 x = output()
 all={}
 abst=''
 for i in range(10560):
  text=x[i]
  """ 呼叫評論觀點抽取 """
  """ 如果有可選引數 """
  # 可選引數為13表示利用了3C產品的語料庫
  options = {}
  options["type"] = 13
  """ 帶引數呼叫評論觀點抽取 """
  result=client.commentTag(text, options)
  print(result)
  if "error_code" in result.keys():
   abst+=''
   all['abstract'] = abst
  else:
   data = result['items']
   items = data[0]
   abst += items['abstract']
   all['abstract'] = abst
 return abst
 
if __name__ == '__main__':
 ALL=commentTag()
 print(ALL)

得到的結果如下:

可以看到,現在抽取出來的評論部分內容都是具有一定觀點傾向的,大部分沒有什麼含義的評論內容已經被除去,這對後面的分析有一定的幫助。