Azure 翻译 api 在从 arangoDB 移交数据时不提供结果
Azure tranlation api don't deliver results while handover data from arangoDB
我在 azure 翻译 api 电话中收到 return 时遇到了一些困难。
我的代码基于此代码 https://github.com/MicrosoftTranslator/PythonConsole 并且运行良好。
我还有一个带有一些测试数据的arangoDB。哪个有效并给我这个:Result on db test
但是,如果我将两者结合如下:
from xml.etree import ElementTree
from auth import AzureAuthClient
from arango import ArangoClient
import requests
client = ArangoClient(
protocol='http',
host='localhost',
port=32768,
username='root',
password='password',
enable_logging=True
)
db = client.database('testdb')
test = db.collection('testcol')
def GetTextAndTranslate(finalToken):
fromLangCode = "en"
toLangCode = "de"
textToTranslate = " "
for t in test:
#text to translate
textToTranslate = t['name']
# Call to Microsoft Translator Service
headers = {"Authorization ": finalToken}
translateUrl = "http://api.microsofttranslator.com/v2/Http.svc/Translate?text={}&to={}".format(textToTranslate, toLangCode)
translationData = requests.get(translateUrl, headers = headers)
# parse xml return values
translation = ElementTree.fromstring(translationData.text.encode('utf-8'))
# display translation if needed
print (translation.text)
if __name__ == "__main__":
#Add your client secret in the next line
client_secret = 'azurepassword'
auth_client = AzureAuthClient(client_secret)
bearer_token = 'Bearer ' + auth_client.get_access_token()
我一无所获。控制台需要不到一秒钟的时间,然后我可以在终端上输入新命令。但是没有显示结果,也试过把它放到一个文件中。 Azure 告诉我我调用了 API,但我看不到那里处理了什么。
感谢您的帮助!
我试图测试您调用 Azure 翻译器的代码 API,但我发现您代码的翻译器部分工作正常,Arango 部分也工作正常。根据你的代码对我来说不完整,我想唯一的问题是函数 GetTextAndTranslate(finalToken)
应该定义为 GetTextAndTranslate(test, finalToken)
可以传递参数 test
集合,如下所示。
def GetTextAndTranslate(test, finalToken):
# Your code
........
if __name__ == "__main__":
client = ArangoClient(
protocol='http',
host='localhost',
port=32768,
username='root',
password='password',
enable_logging=True
)
db = client.database('testdb')
test = db.collection('testcol')
#Add your client secret in the next line
client_secret = 'azurepassword'
auth_client = AzureAuthClient(client_secret)
bearer_token = 'Bearer ' + auth_client.get_access_token()
GetTextAndTranslate(test, bearer_token)
希望对您有所帮助。有任何更新,请随时告诉我。
我在 azure 翻译 api 电话中收到 return 时遇到了一些困难。 我的代码基于此代码 https://github.com/MicrosoftTranslator/PythonConsole 并且运行良好。
我还有一个带有一些测试数据的arangoDB。哪个有效并给我这个:Result on db test
但是,如果我将两者结合如下:
from xml.etree import ElementTree
from auth import AzureAuthClient
from arango import ArangoClient
import requests
client = ArangoClient(
protocol='http',
host='localhost',
port=32768,
username='root',
password='password',
enable_logging=True
)
db = client.database('testdb')
test = db.collection('testcol')
def GetTextAndTranslate(finalToken):
fromLangCode = "en"
toLangCode = "de"
textToTranslate = " "
for t in test:
#text to translate
textToTranslate = t['name']
# Call to Microsoft Translator Service
headers = {"Authorization ": finalToken}
translateUrl = "http://api.microsofttranslator.com/v2/Http.svc/Translate?text={}&to={}".format(textToTranslate, toLangCode)
translationData = requests.get(translateUrl, headers = headers)
# parse xml return values
translation = ElementTree.fromstring(translationData.text.encode('utf-8'))
# display translation if needed
print (translation.text)
if __name__ == "__main__":
#Add your client secret in the next line
client_secret = 'azurepassword'
auth_client = AzureAuthClient(client_secret)
bearer_token = 'Bearer ' + auth_client.get_access_token()
我一无所获。控制台需要不到一秒钟的时间,然后我可以在终端上输入新命令。但是没有显示结果,也试过把它放到一个文件中。 Azure 告诉我我调用了 API,但我看不到那里处理了什么。
感谢您的帮助!
我试图测试您调用 Azure 翻译器的代码 API,但我发现您代码的翻译器部分工作正常,Arango 部分也工作正常。根据你的代码对我来说不完整,我想唯一的问题是函数 GetTextAndTranslate(finalToken)
应该定义为 GetTextAndTranslate(test, finalToken)
可以传递参数 test
集合,如下所示。
def GetTextAndTranslate(test, finalToken):
# Your code
........
if __name__ == "__main__":
client = ArangoClient(
protocol='http',
host='localhost',
port=32768,
username='root',
password='password',
enable_logging=True
)
db = client.database('testdb')
test = db.collection('testcol')
#Add your client secret in the next line
client_secret = 'azurepassword'
auth_client = AzureAuthClient(client_secret)
bearer_token = 'Bearer ' + auth_client.get_access_token()
GetTextAndTranslate(test, bearer_token)
希望对您有所帮助。有任何更新,请随时告诉我。