#python #stanford-nlp
#python #stanford-nlp
Вопрос:
Я создал сервер CoreNLP в Google App Engine и ввел там имя пользователя и пароль, используя следующие свойства: -порт **** -имя пользователя пользователя —передача пароля.
И из Python я узнал, как передать имя пользователя и пароль в свойствах.
Сначала я создаю объект NLP, используя следующую функцию и передавая URL:
sNLP = StanfordCoreNLP(serverurl)
Затем я вызываю аннотацию с данными и свойством, а мое имя пользователя и пароль указаны в реквизитах.
props: {
"annotators": "pos,sentiment",
"pipelineLanguage": "en",
"outputFormat": "json",
"username": "**user**",
"password": "***pass***",
"maxCharLength": -1
}
sNLP.annotate(data, props)
перед предоставлением аутентификации он работал нормально, но после этого я не получаю никакого ответа от сервера.
Так должен ли я передавать имя пользователя и пароль при создании объекта sNLP? Если да, то как? Я не нашел никакой документации, связанной с этим.
Ответ №1:
Решение для этого скоро появится в следующем выпуске нашего кода на Python, который должен появиться очень скоро, хотя его нет в текущей версии.
pip install stanfordnlp
Репозиторий здесь: https://github.com/stanfordnlp/stanfordnlp
Если вы клонируете это, проверяете dev
и запускаете pip install -e .
, вы можете получить последний dev
код ветки.
Пример:
from stanfordnlp.server import CoreNLPClient
with CoreNLPClient(annotators="tokenize,ssplit,pos", memory="4G", server_id='my_server_id', username='user-1234', password='1234') as client:
ann = client.annotate('Hello World!', output_format='text', username='user-1234', password='1234')
print(ann)
Если вы хотите попробовать другие решения, обратите внимание, что для этого кода устанавливается значение auth
a requests.auth.HTTPBasicAuth(username, password)
при выполнении POST-запроса с requests
библиотекой.