Как я могу использовать библиотеку Python запросов с IBMWatson API? - PullRequest
0 голосов
/ 30 марта 2020

Я постоянно размышляю с API IBMWatson Natural Language Understanding. На официальной странице руководства она показывает команду basi c curl для использования API следующим образом:

curl -X POST -u "apikey:{apikey}" \
--header "Content-Type: application/json" \
--data '{
  "url": "http://newsroom.ibm.com/Guerbet-and-IBM-Watson-Health-Announce-Strategic-Partnership-for-Artificial-Intelligence-in-Medical-Imaging-Liver",
  "features": {
    "sentiment": {},
    "categories": {},
    "concepts": {},
    "entities": {},
    "keywords": {}
  }
}' \
"{url}/v1/analyze?version=2019-07-12"

Команда в основном анализирует страницу, предоставленную в ключе url параметра данных, и возвращает анализ. Я хочу сделать то же действие, используя библиотеку запросов Python, однако я новичок в этом. Насколько я понял из Интернета, следующий формат должен соответствовать одному и тому же запросу:

headers={'Content-Type': 'application/json'}

features = {"sentiment": {},"categories": {},"concepts": {},"entities": {},"keywords": {}}

myData ={
    "url": "http://newsroom.ibm.com/Guerbet-and-IBM-Watson-Health-Announce-Strategic-Partnership-for-Artificial-Intelligence-in-Medical-Imaging-Liver",
    "features": features
 }

d = requests.post(
                auth=('apikey','7LNEjCMvP6ZcNShjAkjPob7QSCfIHeZMQkn4Ho3dQgte'),
                headers=headers,
                data=myData,
                url='https://gateway-lon.watsonplatform.net/natural-language-understanding/api/v1/analyze?version=2019-07-12'
            )

Однако сервер отвечает «400», что, по-моему, вызвано ошибкой в ​​моем format.

  • Я протестировал редактирование моего apikey, что привело к ошибке 401 «Unauthorized», как и ожидалось. Итак, я знаю, что могу получить доступ к серверу и пройти аутентификацию с моим ключом.
  • Я проверил удаление параметра «заголовки», в результате чего 415 «Неподдерживаемый тип носителя», поэтому тип возвращаемого значения должен быть JSON Я думаю.

Я не уверен в том, что я делаю неправильно, и ценю любую помощь. Спасибо.

1 Ответ

0 голосов
/ 30 марта 2020

Посмотрите примеры Python SDK для analyze и Функции анализа текста в справочнике по API. Они могут помочь.

...