前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【玩转云函数】腾讯云函数帮我定时和 HR 打招呼,找工作不再愁!

【玩转云函数】腾讯云函数帮我定时和 HR 打招呼,找工作不再愁!

作者头像
腾讯云serverless团队
发布2021-07-20 19:10:44
6010
发布2021-07-20 19:10:44
举报
文章被收录于专栏:Tencent Serverless 官方专栏

以下内容来自「玩转腾讯云」用户原创文章,已获得授权。

最近看很多人跑路,所以就想着造福自己,想去自动的在某招聘软件中跟 HR 打招呼,由于买个服务器来单独配个 corntab 确实有点浪费,所以就选择了云函数,毕竟云函数的免费额度够用了。

所以,开始吧!

1

脚本编写

我使用的是 Node.js 进行编写,总共文件分为三个:

  • common.js 存放公共的头部参数, 和公共方法
  • request.js 用于请求接口
  • index.js 用于云函数的触发器配置运行的文件

代码都没啥,就是带参数请求接口,公共参数,主要是配置请求的 header;

代码语言:javascript
复制
const headers = {  'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36 MicroMessenger/7.0.9.501 NetType/WIFI MiniProgramEnv/Windows WindowsWechat',  'content-type': 'application/x-www-form-urlencoded',  mpt: '',  platform: '',  scene: '',  ua: '{"model":"microsoft"}',  v: '',  ver: '',  wt2: '',  zpAppId: '',  Referer: '',  'Accept-Encoding': 'gzip, deflate, br'}
function sleep (delay) {  return new Promise(resolve => {    setTimeout(() => {      resolve()    }, delay)  })}
exports.headers = headers
exports.sleep = sleep

接口请求,主要就是先获取指定城市的岗位列表,然后挨个打招呼;

代码语言:javascript
复制
const got = require('got')const fs = require('fs')const { headers, sleep } = require('./common')
function getJobList(page = 1) {  return got('自己去抓包哦', {    method: 'GET',    headers,    searchParams: {      appId: 10002,      expectId: 185008765,      sortType: 1,      cityCode: 101020100,      districtCode: '',      businessCode: '',      subwayLineId: '',      subwayStationId: '',      page: page,      pageSize: 10,      salary: '',      degree: '',      experience: '',      stage: '',      scale: '',      industry: '',      longitude: '',      latitude: '',      positionCode: ''    }  })}
function addJob(jobId, lid, securityId) {  const body = {    appId: '',    jobId: jobId,    lid: lid,    securityId: securityId  }  return got('自己去抓包哦', {    method: 'POST',    headers,    body: new URLSearchParams(body).toString()  }).then(res => {    console.log(res.body)    return res  })}
async function main () {  try {    let jobList = []    for (let i = 1;;i++) {      const res = await getJobList(i)      const data = JSON.parse(res.body)      jobList.push(...data.zpData.jobList)      if (!data.zpData.hasMore) {        break      }    }    const asyncArr = []    jobList.forEach(async job => {      console.log(job.jobName)      asyncArr.push(addJob(job.encryptJobId, job.lid, job.securityId))    })    Promise.all(asyncArr)  } catch (error) {    console.log(error)  }}
main()

然后就是获取触发器中附加信息的主函数,通过获取附加信息中写的文件名,来调用指定文件,因为我还有发简历的文件,所以要区分下;

代码语言:javascript
复制
'use strict';exports.main_handler = async (event, context, callback) => {  for (const v of event["Message"].split("\r\n")) {    console.log(v);    require(`./${v}.js`)  }}

2

创建云函数

1. 直接首页搜索云函数

2. 进入控制台:https://console.cloud.tencent.com/scf

3. 创建云函数,创建方式选择自定义创建,运行环境选择 Node.js,函数代码我们直接选择上传文件夹,方便快捷啊,把我们的代码文件夹直接选中上传即可;

  • 注意:这里的超时时间可以设置长一点,毕竟是接口请求,还是得花点时间的,设少了,还没请求完成,就给断了;

4. 接下来,配置触发器,选择定时触发,我们可以选择它写死的一些时间点,例如每一分钟,每一天等,也可以使用自定义触发周期,自己配置 cron 表达式,例如每天晚上九点就是 0 0 9 * * * *;

5. 最后,附加信息选择是,然后写我们要跑的文件名,即 request ;

6. 点击「完成」即可创建云函数,随后我们可以在列表中,查看到我们的云函数,进入详情,也可以修改代码并部署。

3

效果展示


Web Function 体验官召集令!

惊喜福利满满

(点击下图 ? 查看详情)

Web Function 使用体验

(请在 PC 端访问)

  • Web Function 产品文档: https://cloud.tencent.com/document/product/583/56123
  • Web Function 快速体验链接: https://console.cloud.tencent.com/scf/list-create?rid=16&ns=default&keyword=WebFunc

当前已在国内各大区域发布上线,欢迎体验使用!


推荐阅读

One More Thing


欢迎进入千人 QQ 群 (871445853) 交流 Serverless!

  • GitHub: github.com/serverless
  • 官网: cloud.tencent.com/product/serverless-catalog

点击「阅读原文」,了解更多 Web Function 产品详情。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ServerlessCloudNative 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 以下内容来自「玩转腾讯云」用户原创文章,已获得授权。
相关产品与服务
云函数
云函数(Serverless Cloud Function,SCF)是腾讯云为企业和开发者们提供的无服务器执行环境,帮助您在无需购买和管理服务器的情况下运行代码。您只需使用平台支持的语言编写核心代码并设置代码运行的条件,即可在腾讯云基础设施上弹性、安全地运行代码。云函数是实时文件处理和数据处理等场景下理想的计算平台。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档