leoleoasd/zf_spider
Composer 安装命令:
composer require leoleoasd/zf_spider
包简介
一只优雅的正方教务系统爬虫。
README 文档
README
基于PHP实现的简易方正教务管理系统爬虫, 包括了登录学校WebVPN功能, 主要适用于北京工业大学.
安装
使用 composer 进行安装:
composer require leoleoasd/zf_spider
注意:请先安装
composer
Example
<?php require_once "./vendor/autoload.php"; use GuzzleHttp\Client as HttpClient; $client = new \ZfSpider\Client(['stu_id' => 'xxx', 'stu_pwd' => 'xxx']); var_dump($client->login_vpn('xxx',"xxx")); var_dump(serialize($client->getCookieJar())); //$client->setCookieJar(unserialize("")); $client->login(); var_dump($client->getExams()); var_dump($client->getExams('2019-2020','1')); var_dump($client->getGrade()); var_dump($client->getSchedule()); var_dump($client->getSchedule('2019-2020','1'));
API
login_vpn
$client->login_vpn("学号", "密码"); // 返回$this, 可链式调用.
test_vpn
if($client->test_vpn()){ foo(); } // 返回一个Bool, 代表当前是否已经登录了vpn.
login
$client->login(); // 登录教务系统.
getCookieJar / setCookieJar
$client->login_vpn("xxx","xxx"); $jar = $client->getCookieJar(); $jar = unserialize(""); $client->setCookieJar($jar); // 设置cookieJar和获取cookieJar. 可登录vpn后缓存.
getGrade
$client->getGrade(); // 获取所有已修课程成绩. /* [ { "year":"2019-2020", "term":"1", "courseId":"0006794", "courseName":"大学生心理适应指导", "courseType":"校选修课", "courseBelong":"第二课堂", "courseCredit":"1.0", "gradePoint":"4.00", "score":"100", "minorMark":"0", // 辅修标记 "makeUpScore":" ", // 补考成绩 "retakeMark":"0", // 重修标记 "retakeScore":" ", // 重修成绩 "academy":"学生发展指导中心", "remark":" " }, ... ] */
getExams
// 获取考试信息. var_dump($client->getExams()); var_dump($client->getExams('2019-2020','1')); /* [ { "courseId":"(2019-2020-1)-0004312-08625-3", "courseName":"中国近现代史纲要", "name":"xxx", "dateTime":"xxx", "classroom":"xxx", "type":" ", "seat":"xxx", "campus":"通州校区" }, ... ] */
getSchedule
// 获取课表信息 var_dump($client->getSchedule()); var_dump($client->getSchedule('2019-2020','1'));
鸣谢
感谢 西大望路东锤子研究所 的 bjuthelper, 为本项目提供了很多的参考.
本项目的初始代码 fork 自 Lcrawl. 感谢 lndj 对于方正教务系统的研究以及编写了对应的PHP爬虫库.
License
This project is licensed under MIT license.
For more information, checkout LICENSE.
leoleoasd/zf_spider 适用场景与选型建议
leoleoasd/zf_spider 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 35 次下载、GitHub Stars 达 4, 最近一次更新时间为 2020 年 01 月 20 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「正方」 「模拟登陆」 「教务系统」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 leoleoasd/zf_spider 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 leoleoasd/zf_spider 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 leoleoasd/zf_spider 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
统计信息
- 总下载量: 35
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 4
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2020-01-20