All Projects → WindrunnerMax → Shst

WindrunnerMax / Shst

Licence: mit
强智教务API & 山科小站

Programming Languages

python
139335 projects - #7 most used programming language
java
68154 projects - #9 most used programming language

Labels

Projects that are alternatives of or similar to Shst

Cats
Generate tests at runtime based on OpenApi specs
Stars: ✭ 86 (-3.37%)
Mutual labels:  api
Go Whatsapp Rest
Go WhatsApp Implementation in REST API
Stars: ✭ 86 (-3.37%)
Mutual labels:  api
Termux
Node.js module for Termux-API
Stars: ✭ 87 (-2.25%)
Mutual labels:  api
Routegen
Define your API and SPA routes in one place. Use them anywhere. Only 1.3kb.
Stars: ✭ 86 (-3.37%)
Mutual labels:  api
Pager Api
Easy API pagination for Rails
Stars: ✭ 86 (-3.37%)
Mutual labels:  api
Camunda.api.client
Camunda REST API Client for .NET platform
Stars: ✭ 87 (-2.25%)
Mutual labels:  api
Simulator
A ROS/ROS2 Multi-robot Simulator for Autonomous Vehicles
Stars: ✭ 1,260 (+1315.73%)
Mutual labels:  api
Japidocs
A magical api documentation generator without annotation for springboot.
Stars: ✭ 1,289 (+1348.31%)
Mutual labels:  api
Laravel Woocommerce
WooCommerce Rest API for Laravel
Stars: ✭ 86 (-3.37%)
Mutual labels:  api
Pervertgram
A project for stalking people on Instagram.
Stars: ✭ 88 (-1.12%)
Mutual labels:  api
Spotify Web Api Kotlin
Spotify Web API wrapper for Kotlin/JVM, Kotlin/Android, Kotlin/JS, and Kotlin/Native. Includes a Spotify Web Playback SDK wrapper for Kotlin/JS, and a spotify-auth wrapper for Kotlin/Android
Stars: ✭ 86 (-3.37%)
Mutual labels:  api
Multiverse
Elixir package that allows to add compatibility layers via API gateways.
Stars: ✭ 87 (-2.25%)
Mutual labels:  api
Taco Api
🍉 Brazilian Table of Food Composition (TACO) - JSON API
Stars: ✭ 87 (-2.25%)
Mutual labels:  api
Pypistats
Command-line interface to PyPI Stats API to get download stats for Python packages
Stars: ✭ 86 (-3.37%)
Mutual labels:  api
Async Gamequery Lib
A high-performance java game query library designed for steam/source based games and others
Stars: ✭ 88 (-1.12%)
Mutual labels:  api
Core
Open source Dota 2 data platform
Stars: ✭ 1,266 (+1322.47%)
Mutual labels:  api
Ariadne
Ariadne is a Python library for implementing GraphQL servers using schema-first approach.
Stars: ✭ 1,274 (+1331.46%)
Mutual labels:  api
Graphql Portal
Configurable and distributed GraphQL Gateway. Convert your legacy data sources or monitor your existing GraphQL Services with a visual dashboard.
Stars: ✭ 88 (-1.12%)
Mutual labels:  api
Nervsys
A very slight PHP framework, very easy to use and integrate.
Stars: ✭ 88 (-1.12%)
Mutual labels:  api
Usdaplantsapi
DEFUNCT - REST API for the USDA Plants Database
Stars: ✭ 87 (-2.25%)
Mutual labels:  api

SHST

tips2 tips1 tips3

SHST/Python 目录下为Python版本的API
SHST/PHP 目录下为PHP版本的API
SHST/Java 目录下为Java版本的API 
SHST/SHST-UNI 目录下为小程序项目[山科小站--小程序],山东科技大学校园服务平台,已上线微信小程序与QQ小程序 
SHST/SHST-WEL 目录下为小程序项目[山科小站--迎新专版],提供校内的相关信息,迎新专用,已上线微信小程序与QQ小程序   
SHST/SHST-WEX 目录下为NVUE/WEEX项目[山科小站--APP],采用原生渲染,作为UNIAPP纯NVUE/WEEX项目开发,已上架酷安应用市场

API

Python

# Python/SW.py

# 配置信息
account = ""                              # 账号
password = ""                             # 密码
url = "http://jwgl.sdust.edu.cn/app.do"   # ${学校教务系统}/app.do

# 代码末尾注释的方法 取消注释测试执行
Q.get_student_info()                      # 获取学生信息
Q.get_current_time()                      # 获取学年信息
Q.get_class_info()                        # 当前周次课表
Q.get_class_info(3)                       # 指定周次课表
Q.get_classroom_info("0102")              # 空教室查询 "allday":全天 "am":上午 "pm":下午 "night":晚上 "0102":1.2节空教室 "0304":3.4节空教室
Q.get_grade_info("2018-2019-1")           # 成绩查询 # 无参数查询全部成绩
Q.get_exam_info()                         # 获取考试信息

PHP

// PHP/Main.php

// 配置信息
$accountSW = "";                            // 账号
$passwordSW = "";                           // 密码
$urlSW = "http://jwgl.sdust.edu.cn/app.do"; // ${学校教务系统}/app.do

// 代码末尾注释的方法 取消注释测试执行
$Q -> getStudentInfo();                     // 获取学生信息
$Q -> getCurrentTime();                     // 获取学年信息
$Q -> getTable();                           // 当前周次课表
$Q -> getTable(3);                          // 指定周次课表
$Q -> getGrade("2018-2019-2");              // 成绩查询 // 无参数查询全部成绩
$Q -> getClassroom("0102");                 // 空教室查询 "allday":全天 "am":上午 "pm":下午 "night":晚上 "0102":1.2节空教室 "0304":3.4节空教室
$Q -> getExam();                            // 获取考试信息

Java

// Java/MainSw.java

// 配置信息
private String account = "";                            // 账号
private String password = "";                           // 密码
private String url = "http://jwgl.sdust.edu.cn/app.do"; // ${学校教务系统}/app.do

// 代码末尾注释的方法 取消注释测试执行
Q.getStudentInfo().exec();                              // 获取学生信息
Q.getCurrentTime().exec();                              // 获取学年信息
Q.getTable().exec();                                    // 当前周次课表
Q.getTable().setWeek("3").exec();                       // 指定周次课表
Q.getGrade().exec();                                    // 查询全部成绩
Q.getGrade().setTerm("2018-2019-2").exec();             // 查询指定学期成绩
Q.getClassroom("0102").exec();                          // 空教室查询 "allday":全天 "am":上午 "pm":下午 "night":晚上 "0102":1.2节空教室 "0304":3.4节空教室
Q.getExamInfo().exec();                                 // 获取考试信息

Notice

/***
注意:
1. 由于强智版本不尽相同,返回的数据字段会有所差别,例如我们学校返回的是flag字段标记登陆成功,而有学校会返回success字段标记登陆成功
2. 数据接口全部抓取智校园App而来,可以使用Fiddler等抓包工具自行尝试抓包,注意安卓7及以上不会认同用户自定义证书,可以使用root将证书安装为系统证书或使用其他的辅助工具尝试抓包
3. 虽然数据接口由智校园App得来,但这并不意味着只有学校支持智校园才能使用数据接口,强智教务系统的接口一般是默认开放的,当然系统管理员可以手动关闭,而智校园的使用是需要强智公司授权的,也就是说虽然学校不能用智校园,但是完全有可能开放接口
4. 目前发现有的教务系统不能直接查询全部成绩,这个接口的使用请自行验证,按学期查询成绩的接口使用目前并未发现问题
5. 如果接口无法使用,可以尝试直接识别验证码爬取教务系统,验证码识别请看 https://github.com/WindrunnerMax/SWVerifyCode 此仓库,提供了使用 Python、PHP、Java、JavaScript 识别验证码的示例
6. 对于请求的URL,是直接使用protocol://hostname[:port]/app.do,并不是教师学生端的URL再拼接app.do,具体可以访问http://app.qzdatasoft.com:9876/qzkjapp/phone/provinceData查阅,此外有些使用ASPX的强智系统的开放接口为${学校教务系统}/app/app.ashx
***/

山科小站

show

配置相关

// SHST-UNI/App.vue

url            // 后台请求域名
tips           // 公告本地标识
header         // 请求头信息
openid         // OPENID信息
version        // 版本号
curTerm        // 当前学期
initData       // 初始化数据信息
userFlag       // 用户登录状态
colorList      // 颜色方案
curTermStart   // 开学日期
ajax()         // 网络请求封装 回调
toast()        // 弹窗提示
extend()       // 深拷贝与浅拷贝
request()      // 网络请求封装 Promise

目录结构

关于UNIAPP重构以及类的封装文档

SHST-UNI                              // 山科小站总目录
    ├── components                    // 组件封装
    │   ├── headslot.vue              // 带solt的标题布局
    │   ├── layout.vue                // 卡片式布局
    │   ├── list.vue                  // 展示用list布局
    │   ├── sentence.vue              // 每日一句封装
    │   └── weather.vue               // 天气封装
    ├── modules                       // 模块化封装
    │   ├── cookies.js                // Cookies操作
    │   ├── copy.js                   // 深浅拷贝
    │   ├── datetime.js               // 时间日期操作
    │   ├── event-bus.js              // 事件总线
    │   ├── global-data.js            // 全局变量
    │   ├── loading.js                // 加载提示
    │   ├── operate-limit.js          // 防抖与节流
    │   ├── regex.js                  // 正则匹配
    │   ├── request.js                // 网络请求
    │   ├── toast.js                  // 消息提示
    │   └── update.js                 // 自动更新 
    ├── pages                         // 页面
    │   ├── Ext                       // 拓展组
    │   ├── Home                      // Tabbar、辅助组
    │   ├── Lib                       // 图书馆功能组
    │   ├── Sdust                     // 科大组
    │   ├── Study                     // 学习组
    │   └── User                      // 用户组
    ├── static                        // 静态资源
    │   ├── camptour                  // 校园导览静态资源
    │   └── img                       // 图标等静态资源
    ├── unpackage                     // 打包文件
    ├── utils                         // 辅助功能
    │   ├── amap-wx.js                // 高德地图SDK
    │   └── md5.js                    // MD5引入
    ├── vector                        // 部署封装
    │   ├── resources                 // 资源文件
    │   │   ├── camptour              // 校园导览配置文件
    │   │   ├── asse.mini.wxss        // 公共样式库
    │   │   └── iconfont.wxss         // 字体图标
    │   ├── dispose.js                // 部署小程序
    │   └── pubFct.js                 // 公有方法
    ├── App.vue                       // App全局样式以及监听
    ├── main.js                       // 挂载App,Vue初始化入口文件
    ├── manifest.json                 // 配置Uniapp打包等信息
    ├── pages.json                    // 路由
    └── uni.scss                      // 内置的常用样式变量

小程序

show

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].