Microsoft情感API for Python-从内存上载视频

Microsoft情感API for Python-从内存上载视频,python,python-2.7,microsoft-cognitive,Python,Python 2.7,Microsoft Cognitive,我正在尝试将视频加载到Microsoft的情感API。以下是我迄今为止的代码: import httplib import urllib import base64 import json import pandas as pd import numpy as np import requests _url = 'https://api.projectoxford.ai/emotion/v1.0/recognizeInVideo' _key = '<my key>' _maxNum

我正在尝试将视频加载到Microsoft的情感API。以下是我迄今为止的代码:

import httplib
import urllib
import base64
import json
import pandas as pd
import numpy as np
import requests

_url = 'https://api.projectoxford.ai/emotion/v1.0/recognizeInVideo'
_key = '<my key>'
_maxNumRetries = 10

paramsPost = dict()
paramsPost['outputStyle'] = 'perFrame'

headersPost = dict()
headersPost['Ocp-Apim-Subscription-Key'] = _key
headersPost['content-type'] = 'application/octet-stream'
jsonGet = {}
headersGet = dict()
headersGet['Ocp-Apim-Subscription-Key'] = _key
paramsGet = urllib.urlencode({})

responsePost = requests.request('post', _url, \
                                data = {'file':open('my_file.mp4','rb').read()}, \
                                headers = headersPost, params = paramsPost)

print responsePost.status_code
,。。。我回到“失败”。我做错了什么

编辑:我找到了我自己问题的答案。由于有关情感API的文档很少,为了社区的最大利益,我将在下面与大家分享我的发现。 以下代码返回HTML状态代码202,并从本地驱动器成功上载视频:

import httplib
import urllib
import base64
import json
import pandas as pd
import numpy as np
import requests

_url = 'https://api.projectoxford.ai/emotion/v1.0/recognizeInVideo'
_key = '<my key>'
_maxNumRetries = 10

paramsPost = urllib.urlencode({'outputStyle' : 'perFrame', \
                               'file':'my_file.mp4'})
headersPost = dict()
headersPost['Ocp-Apim-Subscription-Key'] = _key
headersPost['content-type'] = 'application/octet-stream'
jsonGet = {}
headersGet = dict()
headersGet['Ocp-Apim-Subscription-Key'] = _key
paramsGet = urllib.urlencode({})

responsePost = requests.request('post', _url + "?" + paramsPost, \
                                data =open('my_file.mp4','rb').read(), \
                                headers = headersPost)

print responsePost.status_code
导入httplib
导入URL库
导入base64
导入json
作为pd进口熊猫
将numpy作为np导入
导入请求
_url='1〕https://api.projectoxford.ai/emotion/v1.0/recognizeInVideo'
_键=“”
_最大数量=10
paramsPost=urllib.urlencode({'outputStyle':'perFrame'\
'file':'my_file.mp4'})
headersPost=dict()
headersPost['Ocp-Apim-Subscription-Key']=\u Key
headersPost['content-type']='application/octet-stream'
jsonGet={}
headersGet=dict()
headersGet['Ocp-Apim-Subscription-Key']=\u Key
paramsGet=urllib.urlencode({})
responsePost=requests.request('post',_url+“?”+paramsPost\
data=open('my_file.mp4','rb')。read()\
headers=headersPost)
打印响应邮政编码
import httplib
import urllib
import base64
import json
import pandas as pd
import numpy as np
import requests

_url = 'https://api.projectoxford.ai/emotion/v1.0/recognizeInVideo'
_key = '<my key>'
_maxNumRetries = 10

paramsPost = urllib.urlencode({'outputStyle' : 'perFrame', \
                               'file':'my_file.mp4'})
headersPost = dict()
headersPost['Ocp-Apim-Subscription-Key'] = _key
headersPost['content-type'] = 'application/octet-stream'
jsonGet = {}
headersGet = dict()
headersGet['Ocp-Apim-Subscription-Key'] = _key
paramsGet = urllib.urlencode({})

responsePost = requests.request('post', _url + "?" + paramsPost, \
                                data =open('my_file.mp4','rb').read(), \
                                headers = headersPost)

print responsePost.status_code