對python藉助百度雲API對評論進行觀點抽取的方法
阿新 • • 發佈:2021-01-12
前言
本文的文字及圖片來源於網路,僅供學習、交流使用,不具有任何商業用途,如有問題請及時聯絡我們以作處理。
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)
得到的結果如下:
可以看到,現在抽取出來的評論部分內容都是具有一定觀點傾向的,大部分沒有什麼含義的評論內容已經被除去,這對後面的分析有一定的幫助。