抓包习讯云院校数据通过PHP剖析导入数据库

打印 上一主题 下一主题

主题 1034|帖子 1034|积分 3102


前言

近来,打卡APP需要这个数据,通过抓包后发现这个数据是固定的,获取很简朴,但是数据太多,手动导入不显示,于是分析了json格式后果断通过脚本完成
【推荐】

  • 《【MQTT】Esp32数据上传收罗:最新mqtt插件(支持掉线、真机调试错误等问题》
  • 《一篇就够:uniapp-Mqtt系列问题具体攻略(解决掉线、真机调试错误等问题)》
  • 《解决微信小程序MQTT真机连接问题与合法域名设置SSL问题》
  • 《解决微信小程序MQTT通讯真机调试失败的问题附加可用代码》
  • 《Esp8266-01s、51单片机实现连接MQTT踩坑:附加烧录安信可固件+宝塔搭建MQTT服务器 全套攻略》
分析

利用json剖析工具对返回的响应数据,进行转义和格式化

部分代码:

由于接口隐私,这里不放了
  1. <?php
  2. include 'api/conn.php';
  3. // 检查连接是否成功
  4. if ($conn->connect_error) {
  5.     die("连接失败: " . $conn->connect_error);
  6. }
  7. // 设置 cURL 请求
  8. $apiUrl = '';
  9. $curl = curl_init($apiUrl);
  10. curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
  11. // 发送 cURL 请求并获取 JSON 数据
  12. $response = curl_exec($curl);
  13. if ($response === false) {
  14.     die("cURL 请求失败: " . curl_error($curl));
  15. }
  16. curl_close($curl);
  17. // 解析 JSON 数据
  18. $data = json_decode($response, true);
  19. if ($data === null) {
  20.     die("解析 JSON 数据失败");
  21. }
  22. // 遍历数据并插入到数据库
  23. foreach ($data['data'] as $group) {
  24.     foreach ($group['schools'] as $school) {
  25.         $schoolId = $school['school_id'];
  26.         $schoolName = $school['school_name'];
  27.         // 插入数据到数据库
  28.         $sql = "INSERT INTO *** (school_id, school_name) VALUES ('$schoolId', '$schoolName')";
  29.         if ($conn->query($sql) === true) {
  30.             echo "插入成功: $schoolName\n";
  31.         } else {
  32.             echo "插入失败: " . $conn->error . "\n";
  33.         }
  34.     }
  35. }
  36. // 关闭数据库连接
  37. $conn->close();
  38. ?>
复制代码
创建数据表

id主动,学校id和学校名给定类型和字长

运行结果

访问demo.php文件,大概等5秒左右即可

成功后如图:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

道家人

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表