我正在尝试从Python中查询此API。它似乎响应400代码。有人可以告诉我该如何查询这个API?
此API记录在http://text-processing.com/docs/phrases.html
import requests
r = requests.post('http://text-processing.com/api/phrases/',
data= {'text':'This is California.'})
我想我误解了应该在这里发布数据的方式。
答案 0 :(得分:5)
你做得恰到好处;发送带有POST
参数的text
请求会给我带有JSON正文的200响应:
>>> import requests
>>> url = 'http://text-processing.com/api/phrases/'
>>> params = {'text': 'This is California.'}
>>> r = requests.post(url, data=params)
>>> r
<Response [200]>
>>> r.json()
{u'NP': [u'California', u'This'], u'GPE': [u'California'], u'VP': [u'is'], u'LOCATION': [u'California']}
如果您收到400响应而不是发送过多数据或空值:
错误
在以下条件下将返回400 Bad Request响应:
- 没有提供文字值
- 文字超过1,000个字符
- 指定了错误的语言
language
可以是english
,dutch
,portuguese
或spanish
,但如果您不包含english
,则默认为 Field f = Unsafe.class.getDeclaredField("theUnsafe");
f.setAccessible(true);
Unsafe unsafe = (Unsafe) f.get(null);
。如果您确实将其包含在请求中,如果未将其设置为这4个支持值中的一个,则还会出现400错误。