第一次编程作业(我的分数)
1.| 博客班级 | https://edu.cnblogs.com/campus/fzzcxy/2018SE2/homework/11169 |
| ---------- | -------------------------------------- |
| 作业要求 | https://edu.cnblogs.com/campus/fzzcxy/2018SE2/homework/1116 |
| 作业目标 | <计算我的分数> |
| 作业源代码 | https://gitee.com/wang-langlang/projects |
| 学号 | <211806343> |
116行代码
预计 | 实际 | |
---|---|---|
分析 | 30 | 50 |
编程 | 120 | 160 |
git | 20 | 30 |
博客 | 30 | 40 |
思路分析
-
首先云班课经验数据的获取。
- 本次要求用JAVA进行命令行小工具的编程,所以上网查询找到了JAVA的网页解析插件jsoup。
jsoup的使用:在导入jsoup包后,通过代码:
(应题目要求将命名为small的小班课活动网页界面和all的大班课活动网页界面的网页源代码存在docSmall和docAll中)File small = new File("small.html"); Document docSmall = Jsoup.parse(small, "UTF-8"); File all = new File("all.html"); Document docAll = Jsoup.parse(all, "UTF-8"); - 将整个网页源码导入后,我们还需要获取相应位置的数据。
前端学习过的同学都知道,html是由许多标签组成的,而我们要过去具体信息就要找到它是属于哪个标签下的哪里。
- 本次要求用JAVA进行命令行小工具的编程,所以上网查询找到了JAVA的网页解析插件jsoup。
-
Score类中进行分数的计算。
-
分数的计算并非简单得一个SUM=。
在获取云班课经验时我就发现了,存在红色经验和绿色经验的区别。(红色经验并非有效经验)// 课堂完成部分分数计算 String totalBase = total.getProperty("base"); double baseScore = 0; // 读取内容 Elements baseDoc = docSmall.select(".interaction-row"); for (int i = 0; i < baseDoc.size(); i++) { if (baseDoc.get(i).text().toString().contains("课堂完成部分")) { // 非红色部分才有分数 if (!baseDoc.get(i).toString().contains("#EC6941")) { String pattern = "\\w* 经验";//正则运算 Pattern p = Pattern.compile(pattern); // 输入序列与该模式匹配。 Matcher m = p.matcher(baseDoc.get(i).text().toString()); while (m.find()) { int s = Integer.parseInt(m.group().replaceAll(" ", "").replaceAll("经验", "").toString()); baseScore += s; } } } }
-
以课堂完成部分代码为例,对自己获取的有效经验进行统计。
- 最后经验通过老师给的公式转换成分数。
- git上传源码到远程仓库(git的personal远程仓库要先建立)
不会的知识的学习过程- 由于之前重装过系统,这次用JAVA编程的时候,已经忘记了eclipse的环境变量设置,然而在上网查找并设置好后发现eclipse还是无法打开,
并给出的提示还是jdk安装环境的问题。折磨了20多分钟后,也不知道是啥原因竟然能够打开了。 - jsoup的使用是我完全没有接触过的,如何使用jsoup将网页源码导入是本次掌握的重要内容。
- 使用git使本地仓库链接远程仓库,并传输文件。(在大佬的帮助下,勉强理解git命令)
- markdowm编辑器的使用,(真心爱了,太喜欢md文档的阅读了)
资料网 - 在这推荐一个大佬在博客写的Git命令的使用 https://www.cnblogs.com/liuhongyu27/p/13655254.html
- 由于之前重装过系统,这次用JAVA编程的时候,已经忘记了eclipse的环境变量设置,然而在上网查找并设置好后发现eclipse还是无法打开,