脚本宝典收集整理的这篇文章主要介绍了

基于Koa2和superagent实现的英语四六级成绩查询系统,同时提供免费API接口

脚本宝典小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望能帮助你少写一行代码,多一份安全和惬意。

koa2-cet

前言

可能很多人都已经写过爬虫了,但是不一定都知道superagent这个爬虫利器,写这篇文章的目的是通过一个具体项目,推荐大家以后写爬虫的时候可以用用superagent,真的超级好用。

介绍

这是一个基于Koa2和superagent实现的英语四六级成绩查询系统,项目使用superagent爬取学信网的数据,然后使用cheerio解析数据,最后将爬取到的结果以JSON或者JSONP的方式返回给前台。

预览

在线预览地址: https://cet.lenshen.com
源码:https://github.com/lensh/koa2...

测试用户:
姓名:汪磊
准考证号:360021162100112

技术栈

Angular:实现前端页面构建
Koa2:实现服务端具体业务逻辑
ES6、ES7、ES8:服务端使用ES6语法,promise/async/await 处理异步
superagent:爬虫的核心,进行模拟请求
cheerio:解析DOM结构,爬取需要的数据
cors:服务端返回数据时做了cors设置,允许跨域
jsonp:支持JSONP请求,客户端需要传入回调函数名称
pm2:服务端使用pm2部署,常驻进程,比forever好用得多(https://github.com/Unitech/pm2

API接口

本系统免费提供API接口,具体接口如下所示:

URL: https://cet.lenshen.com/api/search?user=姓名&number=准考证号
参数说明:
    user  姓名
    number  准考证号
请求方式: GET
请求成功返回json:
{ 
    "code":200,
    "message":"查询成功",
    "data":{ 
          "name":"张三",   //姓名
          "school":"南昌大学",  //学校
          "type":"英语六级",  //考试类别
          "number":"360021162347654",  //准考证号
          "total":"530",   //总分
          "listen":"170",   //听力
          "read":"200",  //阅读
          "writing":"160"  //写作和翻译
    }
}
请求失败返回json:
{ 
    "code":400,
    "message":"查询失败,请检查你的信息是否无误"
}

注意:以上接口可以使用后台代理请求数据,也可以使用ajax请求数据(因为设置了cors)

如果使用JSONP,则需要在url里传入callback:

URL:https://cet.lenshen.com/api/search?callback=cb&&number=准考证号&user=姓名
参数说明:  
    callback  回调函数名称
    user  姓名 
    number  准考证号
请求方式: GET
请求成功返回jsonp:
cb({
    "code":200,
    "message":"查询成功",
    "data":{ 
          "name":"张三",   //姓名
          "school":"南昌大学",  //学校
          "type":"英语六级",  //考试类别
          "number":"360021162347654",  //准考证号
          "total":"530",   //总分
          "listen":"170",   //听力
          "read":"200",  //阅读
          "writing":"160"  //写作和翻译
    }
})
请求失败返回jsonp:
cb({ 
    "code":400,
    "message":"查询失败,请检查你的信息是否无误"
})

最后

如果觉得这个项目还不错的话,那就毫不吝啬地给个star吧。

总结

以上是脚本宝典为你收集整理的

基于Koa2和superagent实现的英语四六级成绩查询系统,同时提供免费API接口

全部内容,希望文章能够帮你解决

基于Koa2和superagent实现的英语四六级成绩查询系统,同时提供免费API接口

所遇到的程序开发问题,欢迎加入QQ群277859234一起讨论学习。如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典网站推荐给程序员好友。 本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。

80%的人都看过