前言
近来,打卡APP需要这个数据,通过抓包后发现这个数据是固定的,获取很简朴,但是数据太多,手动导入不显示,于是分析了json格式后果断通过脚本完成
【推荐】
- 《【MQTT】Esp32数据上传收罗:最新mqtt插件(支持掉线、真机调试错误等问题》
- 《一篇就够:uniapp-Mqtt系列问题具体攻略(解决掉线、真机调试错误等问题)》
- 《解决微信小程序MQTT真机连接问题与合法域名设置SSL问题》
- 《解决微信小程序MQTT通讯真机调试失败的问题附加可用代码》
- 《Esp8266-01s、51单片机实现连接MQTT踩坑:附加烧录安信可固件+宝塔搭建MQTT服务器 全套攻略》
分析
利用json剖析工具对返回的响应数据,进行转义和格式化
部分代码:
由于接口隐私,这里不放了
- <?php
- include 'api/conn.php';
- // 检查连接是否成功
- if ($conn->connect_error) {
- die("连接失败: " . $conn->connect_error);
- }
- // 设置 cURL 请求
- $apiUrl = '';
- $curl = curl_init($apiUrl);
- curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
- // 发送 cURL 请求并获取 JSON 数据
- $response = curl_exec($curl);
- if ($response === false) {
- die("cURL 请求失败: " . curl_error($curl));
- }
- curl_close($curl);
- // 解析 JSON 数据
- $data = json_decode($response, true);
- if ($data === null) {
- die("解析 JSON 数据失败");
- }
- // 遍历数据并插入到数据库
- foreach ($data['data'] as $group) {
- foreach ($group['schools'] as $school) {
- $schoolId = $school['school_id'];
- $schoolName = $school['school_name'];
- // 插入数据到数据库
- $sql = "INSERT INTO *** (school_id, school_name) VALUES ('$schoolId', '$schoolName')";
- if ($conn->query($sql) === true) {
- echo "插入成功: $schoolName\n";
- } else {
- echo "插入失败: " . $conn->error . "\n";
- }
- }
- }
- // 关闭数据库连接
- $conn->close();
- ?>
复制代码 创建数据表
id主动,学校id和学校名给定类型和字长
运行结果
访问demo.php文件,大概等5秒左右即可
成功后如图:
|