0编码,30分钟,开发一套地震信息推送系统
引言
最近宁夏因为地震登上了热搜,一天两次 4 级地震不说,光 1 级以上的就有近 15 次左右,别看这 1-2 级地震小,但是架不住他多啊,而且因为地理位置原因还感受异常明显,这一天天提心吊胆的。
地震预警软件里面基本都不显示 3 级以下的地震了,想看 3 级以下的地震只能从地方地震局官网看,每次刷刷刷的看的麻烦,想的能不能用 Cursor 写一个获取最新地震数据给手机提示的应用?
说干就干!
实现效果
每隔 30 秒抓取一下数据,如果发现有新增的,推送到手机的 bark 中
技术栈
使用当下最热门的 Cursor 和 Sealos 云原生方式开发,力求最简单快速方式搭建。
编程语言:Java
AI:Cursor
数据库:MySQL
手机提示:Bark
Crusor
-
简介: Crusor 是一个基于 VSCode 的 AI 代码开发 IDE,支持多种编程语言,哪怕你不懂代码,只要你能清楚的描述出你的需求,他就可以帮你构建出你想要的代码。
-
优势:
- 基于 VSCode 提供了丰富的开发工具和插件,支持个性化配置。
- 支持多语言开发,适用于不同的项目需求。
- 可以一键快速构建整个项目。
-
官方文档: Crusor 官方文档
Sealos
-
简介: Sealos 是一个基于 Kubernetes 的云原生操作系统,提供了使用个人电脑一样的云原生体验。
-
优势:
- 简化 Kubernetes 的部署和管理,降低使用门槛。
- 提供丰富的云原生应用模板,30 秒内轻松部署 Nginx、mysql、pgsql、mongo 等等应用,加速应用上线。
- 无需安装 Kubernetes 集群,即可登录使用,提供多租户共享一个 Kubernetes 的能力,同时保障数据安全。
- 只需为容器付费,自动伸缩功能可节省 10%~40% 的成本。
- 自动分配二级域名,轻松实现公网访问,支持自定义域名绑定。
-
官方文档: Sealos 官方文档
-
Devbox
-
简介: Devbox 是一个轻量级的开发者环境工具,支持快速创建和切换开发环境,适用于多种编程语言和框架。
-
优势:
- 快速创建和切换开发环境,节省时间。
- 支持多种编程语言和框架,灵活性高。
- 轻量级设计,资源占用低,适合各种开发场景。
-
-
官方文档: Devbox 官方文档
bark
-
简介: Bark 是一个跨平台的通知中心,支持多种平台的通知推送,方便用户接收和管理通知。
-
优势:
- 跨平台支持,可以在多个设备上接收通知。
- 支持自定义通知样式和内容,个性化强。
- 提供丰富的 API,方便集成到各种应用中。
-
官方文档: Bark 官方文档
准备阶段
Python 安装
- 从官网安装 Python
Cursor 安装
- 进入官网 Cursor - The AI Code Editor 下载安装,注册账号登录后会有 14 天的 Cursor Pro 权益,内含 250 次免费 Claude-3.5-sonnet 快速调用
-
Devbox 环境搭建
- 注册 Sealos
- 切换 Sealos 为更为便宜的火山云(字节跳动)
-
- 项目名称随意,选择运行环境为 Python,版本为 3.10,1C1G 的资源,网络端口因为是推送,不需要外网访问将其删除,点击创建即可。
-
-
数据库创建
- 点击右上角最小化按钮,回到主页面,点击数据库图标
-
- 因为是只做推送,保留选择最小配置,点击部署即可
-
- 点击详情页,可以看到数据库连接信息,鼠标移上去可以复制连接信息
-
开始搭建
在 Devbox 创建完成、数据库信息准备好后,我们就可以开始着手搭建了。
-
通过 Devbox 打开 Cursor: 在我们创建好的 Devbox 项目中点击,使用 crusor 打开
-
-
在弹出的 Cursor 中,如果有提示让安装扩展插件,直接点击同意安装即可(如果同时打开了两个窗口,关闭那个无用的窗口)
- 正常打开后,窗口长这样:
-
-
设置 Cursor Rules: 给 crusor 设置 rule 让他更好的去服务我们,提示词可以关注公众号后回复
rule提示词
后下载: -
开始对话: 按住 Ctrl+L 打开 chat 聊天窗口,并选择上方
composer
选项卡,并调整 AI 模型为claude-3.5-sonnet
-
描述需求:
帮我用Python开发一套地震信息推送系统 实现效果:每隔30秒爬取一下 https://www.nxdzj.gov.cn/earthquake/new 这个地震局网站的数据 使用MySQL存储,使用requirements来存储依赖,如果发现有新增的数据,把位置、震级、发生时间推送到我手机的bark中 **数据库连接信息为**: **地址:** 你的数据库地址 **端口号**:你的数据库端口 **账号**:账号 **密码**:密码
-
按照 Cursor 要求运行:
-
问题解决: 一般来说如果遇到报错无法运行、和想要功能有误,可以直接选择当行和报错信息点击悬浮的 add to composer 或者在 composer 中描述,来针对具体问题让 Cursor 解决
-
修改入口 sh:修改
entrypoint.sh
文件python3 hello.py
为你的入口文件,像我为python3 earthquake_monitor.py
部署应用至云
当初选型 sealos 和 Devbox,就是为了快速部署,现在我们应用已经生成完成了,现在需要再 Devbox 中上线
-
将代码中数据库链接信息改成内网地址,以节约成本
-
进行发版:在 Devbox 的详情中选择发布版本,版本号随便填写,发版完成后点击上线
-
应用上线:调整上线资源,可以按我这个来选择,以节省成本,其他的默认即可
-
至此搭建完成!
- 效果图:
总结
Cursor 是一个异常强大的 AI 编辑器,配合这云原生的环境,只要需求描述清楚,哪怕你不是程序猿,也可以快速的搭建想要的应用
虽然途中可能会出现些问题,但是都可以调用 Cursor 来帮我们解决,况且本就没有一开始就完美的软件。
Cursor 配合着 Devbox 和 sealos Cloud 的环境,更是锦上添花,可以帮助我们快速的上线。
借助Cursor,其实实现这种小工具的方法很多,并不是唯一解,你甚至可以不用数据库,直接存储在上下文中。