【问题标题】:How to combine Google App Engine with Cloud Natural Language如何将 Google App Engine 与 Cloud Natural Language 相结合
【发布时间】:2018-01-08 01:45:20
【问题描述】:

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

我发现将 Natural Language API 与 Google Compute Engine 结合使用相当简单,因为我可以简单地在 Python 中导入所需的库。

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

你们中的任何人是否曾经将这两种服务结合起来,如果有,如何结合?

谢谢

【问题讨论】:

    标签: python google-cloud-platform


    【解决方案1】:

    App Engine Standard 尚不支持 Google 客户端库(我假设您正在尝试将其导入您的应用程序),它正在开发中,因此您现在可以尝试以下替代方案:

    • App Engine Flexible:它确实支持客户端库,您只需将它们供应到您的应用程序中,就好像它们是第三方库一样。您可以关注this guide 以适当地添加google-api-python-client 库。
    • REST API:您可以使用REST API(已经有稳定版本,v1)。它可能不如客户端库方便,但您可以使用 Python 代码发出 HTTP 请求并处理它们的响应。
    • Compute Engine:正如您在问题中指出的那样,您将能够在您想要的任何机器(本地或 Compute Engine 中的实例)上使用自定义 Python 运行时环境中的客户端库。李>

    更新:

    实际上,我已经深入研究了您的问题,并且能够使用 App Engine 标准解决它,方法是使用 Google API Client Library(不是 Google 客户端库),这是可用于标准环境的替代版本。下面我留下一小段工作代码,您可以使用自己的数据填充它,并在 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 中所述。

    最后,这里有the documentation API 的可用方法。我提供的示例是使用analyzeSentiment(),但您可以使用您需要的那个。

    希望对你有帮助!

    【讨论】:

    • 太棒了!太感谢了。我开始尝试使用 REST 端点,因为这似乎是最简单的,但我也会看看 Google API 客户端库而不是 Google 客户端库(天哪,命名并不简单)。再次感谢
    • 很高兴能帮上忙!
    猜你喜欢
    • 1970-01-01
    • 2014-08-26
    • 1970-01-01
    • 2019-12-09
    • 1970-01-01
    • 1970-01-01
    • 2020-04-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多