【苹果】SpringBoot监听Iphone15邮件提醒,Selenium+Python自动化抢购脚本

前言

🍊缘由

Iphone15来了,两年之约你还记得吗?

两年前,与特别的人有一个特别的约定。虽物是人非,但思念仍在。

遂整合之前iphone13及iphone14的相关抢购代码,完成一个SpringBoot监听Iphone15有货邮件提醒+python自动化脚本小功能。

后端基于SpringBoot ,通过苹果官网进行有货接口调用 ,将JSON结果解析分析 是否有货,并展示近10条有货记录列;可灵活监听对应型号,通过邮件关联,有货邮件通知 ;也可灵活进行有货自动触发自动化Selenium+Python脚本,从而解放双手,直接起飞。

本文以iPhone 15 Pro Max为例进行解析,若iPhone 15 Pro可自行修改即可。


🎁快速链接

公众号:【JavaDog程序狗】 关注公众号,发送 chat ,无任何套路即可获得


🥝成果初展

1.测试邮箱连通

2.有货订阅监听

3.有货消息列表

4.Selenium+Python自动化脚本


🎯主要目标

实现3大重点

1. SpringBoot监听Iphone有货信息
2. 有货JavaMail邮件通知
3. 有货自动执行Selenium+Python自动化脚本

正文

🍋前置条件

1.Java环境(必备)

后端以SpringBoot为技术栈,所以Java环境是前置条件

2.企业/SMTP邮箱(非必须)

如果配置了邮件监听,需要一个企业邮箱或者SMTP邮箱 进行推送,此条件非必须,可在项目中配置是否使用邮件推送,见下图

3.Selenium+Python环境(非必须)

如果想有货自动执行Selenium+Python自动化脚本,就需要搭建Python相关环境。如果有不了解可以参考本狗之前的文章,里面有环境的搭建流程。

iphone14来了,可是约好的你去哪了

iphone13到底香不香,真的这么难抢?

常见Selenium+Python问题

Chromedriver与Chrome版本不兼容问题

参考文章 blog.csdn.net/jylsrnzb/ar...

本狗提供2个脚本,可灵活使用


🔆技术栈

后端

插件 版本 用途
jdk 1.8 java环境
lombok 1.18.16 代码简化插件
maven 3.6.3 包管理工具
druid 1.1.24 JDBC组件
hutool 5.7.20 Java工具类库
mybatis-plus 3.4.1 基于 MyBatis 增强工具
mysql 8.0 / 5.7 数据库
spring-boot 2.5.15 SpringBoot的依赖配置
前端
插件 版本 用途
layui 2.5.6 经典开源模块化前端 UI 框架
jquery 2.1.1 简洁的JavaScript框架

🌽重点解析

1.苹果有货接口分析

  • 苹果有货接口剖析

其中第一个{}表示型号第二个{}表示地区,拼接后通过HTTP请求调用并分析是否有货

  • 监听定时任务时间corn表达式配置

建议使用动态ip,会避免503错误

2.有货邮件推送

  • 引入邮箱依赖
js 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
    <version>${boot.version}</version>
</dependency>
  • 完善邮件YMAL配置
  • 使用JavaMailSenderImpl发送
  • 灵活管控是否发送邮件通知

3.Selenium+Python自动化抢购脚本

  • 型号颜色/型号容量对应map整理,用于有货后自动执行python脚本传参值对应匹配
  • 灵活管控是否自动执行Python自动化抢购脚本
  • 执行脚本绝对路径设置

4.全景GIF图

总结

本文通过Java配合Python ,以SpringBoot监听苹果有货接口,从而下发进行邮件通知及自动化抢购脚本执行。熟悉后端技术栈的同时,也可以回顾Layui及Jquery等老技术。希望协议技术大佬可以予以指点,互相学习进步。

🏳️‍🌈写在最后:支持国货!支持国货!支持国货!

🍈猜你想问

如何与狗哥联系进行探讨

关注公众号【JavaDog程序狗】

公众号回复【入群】或者【加入】,便可成为【程序员学习交流摸鱼群】的一员,问题随便问,牛逼随便吹。

此群优势:

  1. 技术交流随时沟通
  2. 任何私活资源免费分享
  3. 实时科技动态抢先知晓
  4. CSDN资源免费下载
  5. 本人一切源码均群内开源,可免费使用
2.踩踩狗哥博客

javadog.net

大家可以在里面留言,随意发挥,有问必答


🍯猜你喜欢

文章推荐

【项目实战】SpringBoot+uniapp+uview2打造H5+小程序+APP入门学习的聊天小项目

【项目实战】SpringBoot+uniapp+uview2打造一个企业黑红名单吐槽小程序

【模块分层】还不会SpringBoot项目模块分层?来这手把手教你!

【ChatGPT】手摸手,带你玩转ChatGPT

【ChatGPT】SpringBoot+uniapp+uview2对接OpenAI,带你开发玩转ChatGPT


相关推荐
2301_803875614 小时前
PHP 中处理会话数组时的类型错误解析与修复指南
jvm·数据库·python
m0_743623924 小时前
c++如何批量修改文件后缀名_std--filesystem--replace_extension【实战】
jvm·数据库·python
2501_914245935 小时前
CSS如何处理CSS变量作用域冲突_利用特定类名重写变量值
jvm·数据库·python
菜鸟学Python5 小时前
Python生态在悄悄改变:FastAPI全面反超,Django和Flask还行吗?
开发语言·python·django·flask·fastapi
<-->5 小时前
Megatron(全称 Megatron-LM,由 NVIDIA 开发)和 DeepSpeed(由 Microsoft 开发)
人工智能·pytorch·python·深度学习·transformer
测试19986 小时前
2026最新软件测试面试八股文【附文档】
自动化测试·软件测试·python·测试工具·面试·职场和发展·测试用例
maqr_1106 小时前
MySQL数据库迁移到云端如何保障安全_数据加密与SSL连接配置
jvm·数据库·python
u0109147607 小时前
MySQL如何限制触发器递归调用的深度_防止触发器死循环方法
jvm·数据库·python
weixin_381288187 小时前
MySQL中如何使用HEX函数转换十六进制_MySQL进制转换函数
jvm·数据库·python
maqr_1107 小时前
HTML怎么生成订单预览_HTML只读订单信息结构【操作】
jvm·数据库·python