问题描述
我正在尝试使用IBM Watson通过Python进行情感分析,但是却出现 No module 错误。
import json
import constants
from ibm_watson import NaturalLanguageUnderstandingV1
from ibm_cloud_sdk_core.authenticators import IAMAuthenticator
from ibm_watson.natural_language_understanding_v1 import Features,SentimentOptions
class SentimentAnalysis:
def __init__(self):
authenticator = IAMAuthenticator(constants.IBM_WATSON_KEY)
this.natural_language_understanding = NaturalLanguageUnderstandingV1(
version='2020-08-01',authenticator=authenticator
)
this.natural_language_understanding.set_service_url(constants.IBM_WATSON_URL)
def analyse_sentiments(self,data):
response = this.natural_language_understanding.analyze(
url='www.wsj.com/news/markets',features=Features(sentiment=SentimentOptions(targets=['stocks']))).get_result()
assert isinstance(response,object)
return response
if __name__ == "__main__":
sentiment_analysis_object = SentimentAnalysis()
data = ("I've seen you")
response = sentiment_analysis_object.analyse_sentiments(data)
print json.dumps(response,indent=2)
我正在使用的Python版本是Python 3.6.5 :: Anaconda,Inc。
解决方法
IBM Watson Python SDK的主页位于GitHub上。在那里,您可以找到几种不同的方式来安装Python模块并解决问题。
该GitHub存储库也有一个包含示例的目录,包括example for NLU。尝试运行它。
,这对我有用
我的python
指向anaconda3
文件夹。所以,当我跑步
which python
输出为
/usr/local/anaconda3/bin/python
which python3
也是如此。
我卸载了pip
的现有ibm-watson
安装并运行以下命令从conda
软件包中安装
conda install -c conda-forge ibm-watson
Collecting package metadata (current_repodata.json): done
Solving environment: done
## Package Plan ##
environment location: /usr/local/anaconda3
added / updated specs:
- ibm-watson
The following NEW packages will be INSTALLED:
ibm-watson conda-forge/noarch::ibm-watson-4.7.0-pyh9f0ad1d_0
Proceed ([y]/n)? y
Preparing transaction: done
Verifying transaction: | WARNING conda.core.path_actions:verify(962): Unable to create environments file. Path not writable.
environment location: /Users/VMac/.conda/environments.txt
done
Executing transaction: done
要确认安装,我运行了以下命令
conda list | grep ibm
ibm-cloud-sdk-core 1.5.1 pyh9f0ad1d_0 conda-forge
ibm-watson 4.7.0 pyh9f0ad1d_0 conda-forge
我建议在安装最新版本之前先卸载ibm-watson
的先前版本。
pip uninstall ibm-watson
conda uninstall ibm-watson
还要检查是否指向正确版本的python