开发者社区> 问答> 正文

人工智能——nlp自学习平台如何python调用api?

# 创建AcsClient实例
print 'done1_______________'
client = AcsClient('xxx', 'xxxx', 'cn-hangzhou')
print 'done2_______________'
request = CommonRequest()
print 'done3_______________'
request.set_domain("automl.cn-hangzhou.aliyuncs.com") # 必须设置domain
print 'done4_______________'
request.set_uri_pattern("/api/automl/predict") #设置所要请求的API路径
print 'done5_______________'
request.set_method(method_type.POST); # 设置请求方式,目前只支持POST
print 'done6_______________'
request.add_header("ModelId", "663")
request.add_header("Version", "V1")
request.add_header("Content-Type", "application/json") # 设置签名方法
print 'done7_______________'
request.add_header("x-acs-signature-nonce", uuid.uuid4().hex)# 设置请求唯一码,防止网络重放攻击, 每个请求必须不同
print 'done8_______________'
request.add_header("x-acs-signature-version", "1.0") # 设置签名版本
print 'done9_______________'
#request.add_header("content", "gut")
content = '{"content": "pretty good."}'
print 'done10_______________'
request.set_content_type("application/json;chrset=utf-8")  # 设置请求格式
print 'done11_______________'
request.set_accept_format("application/json;chrset=utf-8") # 设置响应格式
print 'done12_______________'
request.set_content(content.encode('utf-8')) # 设置请求内容
print 'done13_______________'
request.set_version('2019-05-29') # 设置版本
print 'done14_______________'
request.set_action_name("None")
print 'done15_______________'
try:
    response = client.do_action_with_exception(request)
except ServerException as e:
    # 这里可以添加您自己的错误处理逻辑
    # 例如,打印具体的错误信息
    print e.get_http_status()
    print e.get_error_code()
    print e.get_error_msg()
#response = client.do_action_with_exception(request)
print 'done16_______________'
#print response

我从网上找了一个模板,然后按照手册里面的帮助改
这个model是我拿nlp自学习平台文本分类做好的一个情感分析model
报错说
400
MissingContent
Content is mandatory for this action.
改了半天了还是这样,想请教各位爸爸怎么办呀o(╥﹏╥)o

展开
收起
游客kxcy7fja2m6nu 2019-07-18 16:47:03 2437 0
1 条回答
写回答
取消 提交回答
  • 1:安装python(这个不多说啦) 2:下载新浪微博SDK的python包,解压为weibopy目录 3:申请AppKey, 流程: 1:通过oAuth认证 按我的理解简化如下: 用户在新浪微博给的页面输入账号密码,然后微博给应用一个PIN码,这样应用通过PIN码才有权限访问该用户的信息,而应用在整个过程中是接触不到密码的,所以用户觉得很安全,后果很满意 2:获得认证之后,就可以使用微博SDK提供的API获得信息啦 3:如果想设计web或者客户端应用的话,那就继续加个GUI好啦(未完成) 代码: #!/usr/bin/python import webbrowser from weibopy.auth import OAuthHandler from weibopy.api import API AppKey = '2525355147' AppSecret = '2e2c7bcdfc362eace266d1f2bf83fe6b' my_auth = OAuthHandler(AppKey , AppSecret) webbrowser.open(my_auth.get_authorization_url()) verifier = raw_input('PIN: ').strip() my_auth.get_access_token(verifier) my_api = API(my_auth) for comment in my_api.mentions(): object = comment id = object.getattribute("id") text = object.getattribute("text") print str(id) + " : " + text

    答案来源于网络

    2019-09-30 14:32:00
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
【云栖精选6月刊】当AI来敲门,一刊尽览人工智能 立即下载
人工智能的商业化落地 立即下载
人工智能的投资机会 立即下载