微信小程序 | 秋招颗粒无收 ?快用ChatGPT做一款模拟面试小程序

news/2024/7/20 2:28:44 标签: 小程序, 微信小程序, chatgpt, 人工智能, ai
aidu_pl">

Pre:效果预览

① 选择职位进行面试

请添加图片描述


② 根据岗位职责进行回答

请添加图片描述


一、需求背景

这两年IT互联网行业进入寒冬期,降本增效互联网毕业暂停校招岗位的招聘,各类裁员、缩招的情况层出不穷!对于这个市场来说,在经历了互联网资本的疯狂时代,现在各大需要的时候更多能实实在在挣钱的项目。就拿java开发工程师岗位来说,对于有多年工作经验的老鸟程序员,想要晋升跳槽,还是可以依靠自我的资源和主观能动性去谋求更高的发展!

可是对于校招生来说,好不容易学了几年的技术,正好准备要施展一方拳脚的时候,发现今年跟自己的竞争者跟多了,工作岗位却更少了。。。 先来看看时下的牛友们的面试题目。

在这里插入图片描述

虽说这些都是八股!但想要非常流利的答出来还是需要多加练习和背诵呀! 所以,我们更应该未雨绸缪,在具备硬实力的前提下,进一步提升我们的面试应答能力! 那么这个时候,我们就用ChatGPT来做一个根据不同公司岗位需求的AI面试助手!帮你提前熟悉面试环节!更稳拿到offer


二、项目原理及架构

2.1 实现原理

(1)校招面试体验

请添加图片描述


(2)社招面试体验

请添加图片描述


2.2 技术架构

在这里插入图片描述


2.3 技术栈

模块语言及框架涉及的技术要点
小程序前端基于VUE 2.0语法+Uni-app跨平台开发框架Http接口通信、Flex布局方式、uView样式库的使用、JSON数据解析、定时器的使用
小程序接口服务端Python + Flask WEB框架rest接口的开发、 ChatGPT API接口的数据对接 、 前后端websocket实时通信

2.4 数据交互原理

aid-svg-exMRoyjisxGtQZll" width="392.1678466796875" xmlns="http://www.w3.org/2000/svg" height="644.07421875" viewbox="0.000003814697265625 0.0000019073486328125 392.1678466796875 644.07421875" class="mermaid-svg">
选择心仪的公司及岗位
请求岗位数据
API数据发送
返回实时问答
BOSS直聘 岗位信息爬取
ainer">
用户
ainer">
模拟面试小程序
ainer">
服务后端数据处理
ainer">
ChatGPT

三、项目功能的实现

3.1 ChatGPT API的接入

要接入ChatGPT API,需要按照以下步骤进行操作:

  1. 注册一个账号并登录到OpenAI的官网:https://openai.com/
  2. 在Dashboard页面上,创建一个API密钥。在“API Keys”选项卡下,点击“Generate New Key”按钮。将生成的密钥保存好,以备后续使用。
  3. 选择所需的API服务,例如“Completion” API,以使用OpenAI的文本生成功能。

在这里插入图片描述
使用Python调用ChatGPT API实现代码如下:

  • 方法一:使用request
import requests
import json

# 构建API请求
url = "https://api.openai.com/v1/engines/davinci-codex/completions"
headers = {"Content-Type": "application/json",
           "Authorization": "Bearer YOUR_API_KEY"}
data = {
    "prompt": "Hello, my name is",
    "max_tokens": 5
}

# 发送API请求
response = requests.post(url, headers=headers, data=json.dumps(data))

# 解析API响应
response_data = json.loads(response.text)
generated_text = response_data["choices"][0]["text"]

print(generated_text)


  • 方式二:使用openAI库
from flask import Flask, request
import openai

app = Flask(__name_
_)

openai.api_key = "YOUR_API_KEY_HERE"

@app.route("/")
def home():
    return "Hello, World!"

@app.route("/chat", methods=["POST"])
def chat():
    data = request.json
    response = openai.Completion.create(
        engine="davinci",
        prompt=data["message"],
        max_tokens=60
    )
    return response.choices[0].text

if __name__ == "__main__":
    app.run()


3.2 小程序端设计与实现

岗位列表首页面试记录
在这里插入图片描述在这里插入图片描述
职位详情页面面试聊天界面
在这里插入图片描述在这里插入图片描述

3.4 岗位爬虫以及数据交互功能设计与实现



import requests
from lxml import etree
from flask import Flask, jsonify

app = Flask(__name__)

@app.route('/jobs')
def get_jobs():
    url = 'https://www.zhipin.com/job_detail/?query=java工程师&city=101010100&industry=&position='

    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299'
    }

    response = requests.get(url, headers=headers)
    html = etree.HTML(response.content)

    jobs = html.xpath('//div[@class="job-list"]/ul/li')

    job_list = []
    for job in jobs:
        job_name = job.xpath('.//div[@class="job-title"]/text()')[0]
        company_name = job.xpath('.//div[@class="company-text"]/h3/text()')[0]
        salary = job.xpath('.//span[@class="red"]/text()')[0]
        job_dict = {
            'job_name': job_name,
            'company_name': company_name,
            'salary': salary
        }
        job_list.append(job_dict)

    return jsonify(job_list)

if __name__ == '__main__':
    app.run(debug=True)


  • 首先,我们导入 Flask 和其他必要的库。然后我们定义了一个路由 /jobs,当我们请求这个路由时,会触发 get_jobs() 函数。

get_jobs() 函数中,我们首先定义了要爬取的页面 URL 和一个伪装成浏览器的 headers。然后我们发送了一个 GET 请求并得到了响应,使用 lxml 中的 etree 解析响应内容。接下来,我们使用 XPath 找到每个职位的信息块,并使用 xpath() 方法找到每个信息块中我们需要的信息(职位名称、公司名称、薪水)。最后,我们将每个职位的信息封装成一个字典,并将所有职位信息的字典存储在一个列表中。我们将这个列表转化成 JSON 格式并返回。

  • 最后,我们在 main 函数中运行 Flask 应用,开启调试模式。

这个爬虫提供了一个 RESTful API 接口,可以使用 GET 请求获取所爬取的岗位列表数据。在浏览器中输入 http://localhost:5000/jobs 就可以看到所获取到的数据。


四、推荐阅读

🥇入门和进阶小程序开发,不可错误的精彩内容🥇 :

  • 小程序开发必备功能的吐血整理【个人中心界面样式大全】》
  • 《吐血整理的几十款小程序登陆界面【附完整代码】》

http://www.niftyadmin.cn/n/225514.html

相关文章

【分享】集简云审批支付助手,实现OA付款单自动到招商银行支付

场景描述 支付管理是企业财务管理中的重要一环,直接涉及企业现金流的管理和资金的运用。 在现代商业环境下,企业支付管理越来越复杂,许多公司都存在支付流程不规范、支付环节复杂的问题,导致企业支付效率低下。一方面&#xff0…

你以为你守规矩就没事了吗?你还是太年轻了,老程序员告诉你实情

大家好! 今天我们不讲这个技术了 我们来讲一些程序员的职场问题 在这里我先给大家提一个问题 不守规矩的程序员 他到底过得舒不舒服 大家可以把心里想的答案 写在这个公屏上面 我这里呢先给大家说一个案例 大家就知道这个答案了 这里有两个同事 一个叫小明一个叫小强 小明呢每天…

Python中if语句在列表中的使用

Python中if语句在列表中的使用 假设我们有一个简单的列表: my_list [1, 2, 3, 4, 5]我们可以使用 if 语句来筛选其中的元素,例如: my_list [1, 2, 3, 4, 5] new_list [] for item in my_list: if item > 2: new_list.append(it…

技术宅小伙:过来人给计算机专业学生的一些建议

给大学计算机专业学生的血泪建议 看完这个视频,真的有可能改变你的大学四年。虽然你现在的大学还一片空白,但请准备一份简历。不管你愿不愿意,当你大四走出校园的那一刻,别人就是通过这样一张纸来评判你。然而现实是很多人大学玩…

从0学习stm32

1.STM32介绍: ST:指的是意法半导体; M:指定微处理器 使用的是ARMCortex-M3 ARM分成三个系列: Cortex-A: 针对多媒体应用(手机) Cortex-R:针对对实时性和性能有一定要求的场景 Cortex-M:针对低功耗高性…

一款多参数多合一的空气质量传感器【温湿度、TVOC甲醛CO2粉尘等】

档案馆库房专用的一款智能型空气质量云测仪 空气质量检测仪 空气质量传感器 环境集成传感器 集成/温湿度、粉尘PM2.5 PM10/甲醛/TVOC/CO2等高度集成的一款传感器/RS485信号输出 ◆温度测量参数: (1)温度测量范围: -40~80℃(2)输出分辨率:0.1oC (3)…

Three.js教程:顶点位置数据解析渲染

推荐:将NSDT场景编辑器加入你3D工具链其他工具系列:NSDT简石数字孪生顶点位置数据解析渲染 如果你没有WebGL基础,可以先不用记忆每个的threejs 具体内容,有一个大致印象即可,学习本节课的重点是建立顶点的概念。如果你…

怎样设置树莓派的IP地址为静态值

在树莓派上设置静态IP地址,可以通过以下步骤进行: 登录到树莓派:通过SSH或物理键盘和显示器连接到树莓派。 打开命令行终端:在树莓派上打开一个命令行终端窗口。 编辑dhcpcd.conf文件:输入以下命令来编辑dhcpcd.conf…