首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >抓包习讯云院校数据通过PHP解析导入数据库

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

作者头像
园游会永不打烊
发布于 2023-10-01 08:36:37
发布于 2023-10-01 08:36:37
6913
举报
文章被收录于专栏:cloud stdiocloud stdio

前言

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

分析

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

部分代码:

由于接口隐私,这里不放了

代码语言:javascript
复制
<?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秒左右即可

成功后如图:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 前言
  • 分析
  • 部分代码:
  • 创建数据表
  • 运行效果
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档