首页 > 其他分享 >【教程】初识云函数,实现无需服务器的项目上云!

【教程】初识云函数,实现无需服务器的项目上云!

时间:2023-08-19 11:37:45浏览次数:35  
标签:教程 函数 url 代码 上云 初识 服务器 requests 可以


转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn]

你是否也在忧愁,想把自己的项目放在云上跑,但又不想花大价钱购买云服务器?

云函数介绍

        云函数(Serverless Cloud Function,SCF)的简单理解就是:可以部署在云上的项目,但不需要特地购买服务器,并且可以通过“定时/url访问”等特定方式触发运行。这特别适合于既需要云环境,但又不需要为此大成本购买服务器的用户。

        比如,我只是希望能定时运行一个检查专利状态、自动签到的脚本,也可能是想要运行一个flask API网管,甚至你也可以用它来做自制软件的网络验证。

使用示例

        这里,我们就简单介绍一个基于腾讯云函数的小应用:定时监控专利状态。部署流程都一样,熟悉后你就尝试可以从小应用扩展到大应用。

领取云函数资源

        目前,腾讯向新用户免费赠送了3个月的体验版本,没有云函数资源得同学可以赶紧薅起来!领取入口:免费云函数

【教程】初识云函数,实现无需服务器的项目上云!_Server

【教程】初识云函数,实现无需服务器的项目上云!_flask_02

脚本编写

脚本的编写与在本地开发的模式一模一样,没有任何区别。

1、先点击“新建”云函数:

【教程】初识云函数,实现无需服务器的项目上云!_Server_03

2、这里官方也提供了很多例程给你直接尝试:

【教程】初识云函数,实现无需服务器的项目上云!_服务器_04

3、不过我们是自己创建的话,就选右边的“从头开始”,并填写好信息:

【教程】初识云函数,实现无需服务器的项目上云!_服务器_05

        这里的“事件函数”和“web函数”就是你的触发执行方式,由于是定时执行,所以这里选择“事件函数”。如果你想通过访问指定URL来触发执行(比如上传图片),那就选“web函数”。

        “高级配置”这里是根据你代码的需求来填,一般来说保持默认就行:

【教程】初识云函数,实现无需服务器的项目上云!_服务器_06

        “触发器配置”这里是让我们设置定时信息:

【教程】初识云函数,实现无需服务器的项目上云!_服务器_07

        注意,如果你前面选的是“web函数”,那这里的内容就不一样了,它就长这样,也比较直观好理解:

【教程】初识云函数,实现无需服务器的项目上云!_Server_08

4、等待部署完成后,就可以开始编写具体代码了。IDE应该是vscode改的,是不是就跟你本地一模一样:

【教程】初识云函数,实现无需服务器的项目上云!_服务器_09

        如果写完代码,可以点“测试”跑一下,输出内容会显示在右下角:

【教程】初识云函数,实现无需服务器的项目上云!_服务器_10

5、我们以这个专利状态为例:SooPAT 专利搜索,它长这个样子:

【教程】初识云函数,实现无需服务器的项目上云!_flask_11

        我们使用requests库来请求这个url,再解析他的返回内容即可。注意,这里的requests是第三方库,这可如何安装?

        我们直接在IDE下方的“终端”执行pip安装即可,非常的方便:

【教程】初识云函数,实现无需服务器的项目上云!_服务器_12

        那么,最后的代码可以是这样的:

# -*- coding: utf8 -*-
import requests
from lxml import etree

def main_handler(event, context):
    url = 'http://www.soopat.com/Home/SipoLegal/202211296680'
    html = requests.get(url)
    root  = etree.HTML(html.text)
    date = root.xpath('//*[@id="PatentContentTable"]/tbody/tr[3]/td[2]/text()')[0].strip()
    state = root.xpath('//*[@id="PatentContentTable"]/tbody/tr[5]/td[2]/text()')
    state = ', '.join(state).strip()
    content = '公告日: ' + date + '; 状态: ' + state
    url = 'http://xfxuezhang.cn:9966/QQ/send/?target=1061700625&msg='+content
    requests.get(url)

        这段代码实现了检查专利状态,并将结果发送到指定的url。

6、确认代码没有问题后,点击下方的“部署”,就可以让代码开始自动执行了:

【教程】初识云函数,实现无需服务器的项目上云!_Server_13

【教程】初识云函数,实现无需服务器的项目上云!_服务器_14编辑

7、支持各种信息的监控,方便合理的分配资源:

【教程】初识云函数,实现无需服务器的项目上云!_Server_15

Serverless应用

        如果说前面介绍的云函数是函数级别的上云,那Serverless应用就是框架级别的上云,它可以帮你创建指定框架下的环境,而不需要手动一点点搭建。可以看到,新建界面它只提供了各种框架的选择:

【教程】初识云函数,实现无需服务器的项目上云!_flask_16

        这种类型的,适合于比如你想做一个API网关,或者一个具体地、完整地应用。我们以创建一个Flask网关来给大家做一个演示。

1、简单填写一下信息:

【教程】初识云函数,实现无需服务器的项目上云!_服务器_17

        在“高级配置”这里,我们可以勾选一下“固定出口IP”这个选项,因为它是免费的,不用白不用!

【教程】初识云函数,实现无需服务器的项目上云!_Server_18

2、它会自动拉取代码并初始化环境,根据项目大小可能需要等待个5分钟,默默等待它部署完成:

【教程】初识云函数,实现无需服务器的项目上云!_flask_19

3、创建完成后,点击这个“URL”就可以访问到这个应用了,不过我们还没有编写代码。我们回到“函数服务”这一栏,可以看到我们创建的flask应用,点进去:

【教程】初识云函数,实现无需服务器的项目上云!_服务器_20

        跟前面步骤一样,我们根据自己的需求编写代码,编写完成后点击“部署”。

【教程】初识云函数,实现无需服务器的项目上云!_Server_21


总结

        云函数真是的非常的方便,它帮助我们实现了项目的上云,又不需要花大价钱去买云服务器。而且还有一点,云函数的通信安全是由腾讯来保障,因此免去了在服务器上还需要考虑如何防止被入侵的烦恼。对于需求量不大的用户简直是方便的不要不要的。


标签:教程,函数,url,代码,上云,初识,服务器,requests,可以
From: https://blog.51cto.com/xfxuezhang/7147546

相关文章

  • 前端入手超简单之CSS3免费教程
    CSS样式课程目标1.css引入方式(重点)2.css选择器*(重点)3.css盒子模型(重点)4.css3常见效果(重点)5.CSS3常用的规则;级联样式表css介绍引用百度百科css概述层叠样式表其实就是对静态页面进行装饰,但是,特别要注意的点是:通常建议表现形式与页面内容分离(例如:人就是内容,穿着打扮......
  • Xmind 8 图文激活教程(附下载地址,亲测有效)
    分享一波Xmind激活教程,亲测有效,只需下载我提供的Xmind安装包以及激活程序即可搞定Xmind激活,无需激活序列号啥的~无图无真相,上Xmind激活成功截图。下载安装包以及激活包https://www.kdocs.cn/l/ccEaN54wHhZX下载成功后,解压,目录如下:安装双击xmind-8-update7-win......
  • 无涯教程-Perl - waitpid函数
    描述该函数等待ID为PID的子进程终止,返回已故进程的进程ID。如果PID不存在,则返回-1。进程的退出状态包含在$?中。可以将标志设置为各种值,这些值等于waitpid()UNIX系统调用使用的值。FLAGS的值为0应该在支持进程的所有操作系统上工作。语法以下是此函数的简单语法-waitpi......
  • Adobe InCopy 2020中文版下载(附教程) 系列软件
    Adobe官方打造的一款专业的文案撰稿人和编辑人员写作工具,AdobeInCopy2021特别版是根据官方版改装而成,不用激活,支持多种语音,必须是win10系列才可以使用,不用登录不用断网直接安装就是激活版本。软件地址:看置顶贴AdobeInCopy主要特点1.文字编辑和校对:InCopy为用户提供了一个直观和......
  • 无涯教程-Perl - wait函数
    描述该函数等待子进程终止,返回已故进程的进程ID。进程的退出状态包含在$?中。语法以下是此函数的简单语法-wait返回值如果没有子进程,则此函数返回-1,否则将显示已故进程的进程ID参考链接https://www.learnfk.com/perl/perl-wait.html......
  • Studio One 导出音频教程
    当你制作好乐曲后,打算发布音频,需要点击上方菜单栏的[乐曲]->[导出音频...]在弹出的对话框中,先选择导出位置选择完成后,选择想要导出音频的格式及分辨率、采样率:再在右侧更改好导出范围,点击确定即可开始导出导出持续时间要保证非0,否则会导出失败。导出成功则会出现以下的......
  • Studio One 6 中挂载 Kontakt 6 教程
    开始之前已经分别安装好StudioOne与Kontakt插件:打开StudioOne,在顶部菜单栏上选择[StudioOne]->[选项...]在弹出的对话框中选择[位置]->[VST插件]->[添加...]找到Kontakt安装目录并"选择文件夹"选中后点击“应用”此时它会扫描一段时间,待进度条结束后......
  • 无涯教程-Perl - values函数
    描述此函数返回HASH中包含的所有值的列表。在标量context中,返回将返回的值的数量。使用由each和keys函数使用的相同迭代器,因此使用顺序。语法以下是此函数的简单语法-valuesHASH返回值此函数在标量context中返回哈希值中的值数,在列表context中返回值列表。例以下是......
  • 使用appuploader工具发布证书和描述性文件教程
    使用APPuploader工具发布证书和描述性文件教程之前用AppCan平台开发了一个应用,平台可以同时生成安卓版和苹果版,想着也把这应用上架到AppStore试试,于是找同学借了个苹果开发者账号,但没那么简单,还要用到Mac电脑的钥匙串申请发布证书和上传ipa,可没有Mac,同学的大老远的也不方便拿过......
  • 初识目标检测
    初识目标检测什么是目标检测?在图像或视频中,找到目标位置并进行分类。早期的目标检测模型是通过集成一系列手工设计的特征提取器来构造的,速度慢、精度低、跨域性能差。目标检测的目的检测出图像中所有实例的类别,并用一个轴对称的矩形框大致给出实例的位置。检测器应当识别出所......