如何在云端托管 Python 脚本?

How to host a Python script on the cloud?

我写了一个 Python 脚本,它可以抓取网站并在满足特定条件时发送电子邮件。它每天都在循环中重复。

我将 Python 文件转换为一个 EXE,它 运行 作为我计算机上的一个应用程序。但我认为这不是满足我需求的最佳解决方案,因为我的计算机并不总是开机并连接到互联网。

是否有一个特定的网站可以让我托管我的 Python 代码,并允许它始终 运行?

更一般地说,我正在尝试更全面地了解它的工作原理。您实际上需要做什么才能在云上拥有 Python 脚本 运行ning?你只是上传它吗?您必须执行哪些步骤?

提前致谢!

您可以使用 AWS Beanstalk 部署您的应用程序。它将为您提供整个 python 环境以及可能根据您的需要更改的服务器配置。它是来自 AWS 云的 PAAS 产品。

好吧,我认为最好的选择之一是 pythonanywhere.com 您可以上传您的 python 脚本 (script.py) 然后 运行 然后完成。 我用我的电报机器人做了这个

到目前为止,我发现的最好和最便宜的解决方案是将 AWS Event Bridge 与 AWS Lambda 结合使用。

AWS Lambda 允许您使用最流行的编程语言上传和执行您想要的任何脚本,而无需每月支付服务器费用。

并且您可以使用 AWS Event Bridge 触发 Lambda 函数的执行。

您只需为在 AWS Lambda 中使用的内容付费,而且非常便宜。以下是 AWS 弗吉尼亚北部地区 Lambda 的定价。对于大多数脚本,最小内存绰绰有余。因此,对于每月 运行 一个每小时需要 5 秒才能完成的脚本,每月将花费 0.00756 美元(不到一美分!)。

Memory (MB) Price per 1ms
128 [=10=].0000000021
512 [=10=].0000000083
1024 [=10=].0000000167
1536 [=10=].0000000250
2048 [=10=].0000000333
3072 [=10=].0000000500
4096 [=10=].0000000667
5120 [=10=].0000000833
6144 [=10=].0000001000
7168 [=10=].0000001167
8192 [=10=].0000001333
9216 [=10=].0000001500
10240 [=10=].0000001667

然后您可以使用 AWS Event Bridge 安排 运行 AWS Lambda 函数每分钟、每小时等

这里有一些文章可以帮助您 运行 每分钟、每小时等任何脚本

How to Create Lambda Functions in Python

How to Schedule Running an AWS Lambda Function