如何将Google App Engine与Cloud Natural Language结合使用

时间:2018-01-08 01:45:20

标签: python google-cloud-platform

我认为我想做的事情很简单,但事实并非如此。

我发现将自然语言API与Google Compute Engine结合使用非常简单,因为我只需在Python中导入所需的库。

这似乎不是App Engine的情况,因为我受到导入错误的困扰,只要我修复了一个,另一个就出现了。

你们有没有想过将这两项服务结合起来,如果有的话,怎么做?

谢谢

1 个答案:

答案 0 :(得分:1)

App Engine Standard尚不支持Google客户端库(我假设您尝试导入到您的应用程序中),它可以在开发中使用,所以到目前为止您可以尝试使用以下替代方案:

  • App Engine灵活:它支持客户端库,您只需将它们作为第三方库提供给您的应用程序。您可以关注this guide以正确添加google-api-python-client库。
  • REST API:您可以使用REST API(已有稳定版本, v1 )。它可能不如客户端库那么方便,但您可以使用Python代码发出HTTP请求并处理它们的响应。
  • 计算引擎:正如您在问题中指出的那样,您将能够在您想要的任何计算机(本地或计算引擎中的实例)中使用自定义Python运行时环境中的客户端库

<强> 更新:

实际上,我已经深入研究了您的问题,并使用Google API Client Library(而不是Google客户端库)使用App Engine标准解决了这个问题,这是标准环境可用的替代版本。下面我留下一小段代码,您可以使用自己的数据填充这些代码并在App Engine环境中尝试,甚至可以使用本地开发服务器。

from apiclient.discovery import build

service = build('language', 'v1', developerKey='<YOUR_API_KEY>')                
collection = service.documents()

data = {}
data['document'] = {}
data['document']['language'] = 'en'
data['document']['content'] = 'I am really happy'
data['document']['type'] = 'PLAIN_TEXT'

request = collection.analyzeSentiment(body=data)
res = request.execute()

您需要obtain an API key进行身份验证,如文档中所述,您还需要按照the other link I shared中的说明添加库。

最后,您可以在此处获得有关API的可用方法的the documentation。我提供的示例是使用analyzeSentiment(),但您可以选择所需的示例。

希望它有所帮助!