【发布时间】:2017-08-16 14:47:47
【问题描述】:
我有一个 Python 脚本,它从 Google Analytics 获取数据并将其放入 CSV 文件中。我目前在本地计算机上运行此脚本,但我想在我的公司 Azure 租户中运行该脚本。我可以/应该使用什么 Azure 服务来每天运行此脚本?
【问题讨论】:
我有一个 Python 脚本,它从 Google Analytics 获取数据并将其放入 CSV 文件中。我目前在本地计算机上运行此脚本,但我想在我的公司 Azure 租户中运行该脚本。我可以/应该使用什么 Azure 服务来每天运行此脚本?
【问题讨论】:
根据您的需要,我建议您在 Web Apps Service 中使用 Web Jobs。
它有两种类型的 Azure Web Jobs 供您选择: 连续和触发。 根据您的需要,应该采用触发器。
您可以参考文档here 了解更多详情。此外,here 展示了如何在 WebJobs 中运行任务。
我创建了一个简单的 Trigger webjob 供您参考。
第一步:我写了一个 Sample.py 如下:
我使用python第三方模块virtualenv创建了一个隔离的python环境,并使用pip install requests命令行下载了请求所依赖的libs包。
然后将 Sample.py 统一压缩到一个文件夹中,其中包含依赖于您所依赖的请求的 libs 包。
第 2 步:在 Web 应用服务中创建 webjob。在这里,我选择了Triggered Type并设置了cron表达式0/5 * * * * *,这意味着该作业将每5秒执行一次。
您将在成功创建后看到 Web Job 列表。
第 3 步:您可以通过 Logs 按钮查看正在运行的 Web 作业的状态和日志,如下所示:
【讨论】:
activate.bat 中有什么内容(第 1 步,第二张截图)?
除了第一个答案之外,您还可以使用带有计时器的 azure 函数,该计时器基本上是 cronjob 上的脚本,没有完整的机器并通过调用付费。 https://docs.microsoft.com/en-us/azure/azure-functions/functions-overview
【讨论】: