第五次UML作业——结对作业二:班级成绩表
作业要求 | https://edu.cnblogs.com/campus/fzzcxy/2018SE2/homework/11248 |
---|---|
作业目标 | 熟练jar包的导入及使用并了解熟悉爬虫相关知识 |
作业源代码 | https://gitee.com/chitta/pair |
队员1 | 211812130 |
队员2 | 211706368 |
自我介绍
结队感受
- 结对可以提高作业的效率,并且结合双方提供的思路可以让项目更快更好地进展。但是由于通过线上沟通有些问题表达得不清楚便容易使双方误会,此时要沟通好。因此良好的团队协作氛围是生产力的保证。
编码概览
类别 | 参数 | 闲话 |
---|---|---|
分析 | 4h | 倒也不是分析题目分析了这么久,卡在了爬虫,陷在要用Python完成这道题的迷思里,导致查了很久不太相关的资料,甚至准备用php操作 |
编码 | 11h | cookie杀我,在网页上按F12和人家出来的界面不一样,于是URL崩溃;还有Git源代码操作失误导致时间加倍 |
代码 | 234行 | Teaml:144行 netWork:35行 Student:55行 |
具体分析
1.通过相关配置文件config.properties以获取用班课在浏览器中的URL
url=https://www.mosoteach.cn/web/index.php?c=interaction&m=index&clazz_course_id=9E603F91-4AF8-11EA-9C7F-98039B1848C6
_uab_collina=159887898952012194662593
login_token=88d7797bc1efb4248ac07ab4e39af937013a8e7cc521b63c7efc43c2e526090e
SERVERID=5da4142ab453b5c560efefb22dcfbe6a|1601734128|1601733942
acw_tc=2f624a1916017339428085593e3840c3dd5bf8c8bf2e54d12cb38ae9a6d7e3
teachweb=6b3a4ba4473d2b5a12f16b2eb476e7e9af39767f
2.根据已得到的URL,遍历为每一个网页的信息进行整合,创建学生对象,添加集合
for (int i=0 ;i<name.length;i++) {
String[]str=doc1.getElementsByAttributeValue("style", "font-size: 12px; color: #333;").text().split(" ");
Student stud=new Student();
stud.setStu_name(str[i%name.length]);
stu.add(numCount, stud);
String[]str1=doc1.getElementsByAttributeValue("style", "line-height: 20px; font-size: 12px; color: #666;").text().split(" ");
stu.get(numCount).setStu_no(str1[i%name.length]);
numCount++;
}
3.用IO流输出到文本文件中
难点
-A:
- 在一开始的cookie属性获取就出现了问题,我们写码那台电脑的控制台导航栏长这样:
和云班课给出的资源里的示例图完全不一样,于是一顿乱找,凭借基础还算扎实的英语水平知道“network”和“网络”对应,再随便猜了一下应该差不多就是第一文件吧,果不其然,就是这个:
-B:
- 在时隔两个星期之后,很好的忘记了Build Path是这么弄的了,于是我们点成了这个:
导致jar包无论如何都import不了,最后要感谢第一次写的博客成功搭建完成,说明博客的记录还是挺有必要的。
-C:
- 这个不算是难点,应该算是错误,在把项目复制到git克隆到本地的pair仓库时,一时着急,直接移过去了,没有复制。于是我们回到Eclipse一看,人傻了,代码全没了,还以为不小心点到了什么,在那撤销,结果发现整个项目空了。最后又复制回来恢复。
!未解决的问题:
- 在个人编程作业的时候就遇到了这个问题,但是一直没有得到解决。一旦在使用
$ git commit -m'命名'
提交进行提交命名时,如果按住Ctrl+Shift
键切换中英文,就会变成insert模式,但是我确实没有按到Insert键,最后无果,改用全英文命名
参考资料:CSDN、Java爬虫、Markdown排版