Как разрешить содержание пустой ошибки в NLU Watson API?
Я транслирую твиты в файл tweet.txt
и используя другой скрипт на Python, я читаю твиты и отправляю их Уотсону. Иногда возникает ошибка:
Traceback (последний вызов был последним): файл "readingTweets.py", строка 44, на языке ='en' File "/usr/local/lib/python2.7/dist-packages/watson_developer_cloud/natural_language_understanding_v1.py", строка 173, в методе анализа ='POST', url=url, params=params, json=data, accept_json=True) Файл "/usr/local/lib/python2.7/dist-packages/watson_developer_cloud/watson_service.py", строка 385, в запросе info=error_info, httpResponse=response) watson_developer_cloud.watson_service.WatsonApiException: ошибка: недопустимый запрос: содержимое пусто, код: 400, X-dp-watson-tran-id: gateway02-582988317, X-global-транзакция -id: ffea405d5adda40d22bfb21d
Мой пример кода:
while 1:
where = file.tell()
line = file.readline()
if not line:
time.sleep(1)
file.seek(where)
else:
if (line):
print "-----------------------------"
print "the line is: "
print line
print "-----------------------------"
response = natural_language_understanding.analyze(
text=line,
features=Features(
entities=EntitiesOptions(
emotion=True,
sentiment=True,
limit=2),
keywords=KeywordsOptions(
emotion=True,
sentiment=True,
limit=2)),
language='en'
)
print(json.dumps(response, indent=2))
1 ответ
Что есть, то есть Error: invalid request: content is empty no content
или недопустимые символы. Вы предположили, что были такие символы, как \n
использовал, и вы проверили только на пустые.