Как разрешить содержание пустой ошибки в 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 использовал, и вы проверили только на пустые.

Другие вопросы по тегам