2023秋软工实践个人作业二

第二次个人作业 

ddl 2023-09-15 23:59:59

背景

为了更好地提升代码能力,jason哥想要收集相应的题目,有针对性地刷题。而需要收集洛谷所有题目,但是工作量太大,所以jason哥急需大家运用爬虫技术,得到洛谷各种难度的题目和题解。考虑到近来流行的AIGC技术,jason哥认为,在AI的帮助下,这项工作的难度会大大降低。

 

项目要求

在AIGC技术的帮助下,利用Copilot等工具,运用Python完成爬虫,并用Tkinter库制作相应的GUI页面,将爬取到的题目以markdown文件存储,放到相应文件夹下。

前端页面要求

页面上需要显示相应的输入框以便筛选相应的题目。 

筛选条件如上,包含题目难度,包括暂无评定入门普及-普及/提高-普及+/提高提高+/省选-省选/NOI-NOI/NOI+/CTSC,和一些其他关键词,如算法/来源/标题/题目编号等

爬取内容存放要求

爬下所有显示的题目:

对于每一道题,以markdown格式存储,命名为“题目编号-标题.md”,对应题目的第一篇题解,以markdown格式存储,命名为“题目编号-标题-题解.md”,一起放入文件夹”题目编号-标题“下。

对于爬取的所有题目,将其”题目编号-标题“文件夹放到“题目难度-关键词”的目录下,若搜索时存在多个关键词,以“关键词1-关键词2-...”展示。

 

结合AIGC

现有的AIGC应用包括VScode中的Copilot插件Cursor IDE等等,请安装并利用这些工具辅助完成代码,要求

完成一张表格,包含以下内容:

  1. 爬虫任务可以被分解成哪几个小任务?

  2. 预估哪几个子任务可以利用AIGC?

  3. 实际中哪些部分利用了AIGC?

  4. AIGC技术的优缺点,适合用在哪些方面,不适合实现哪些功能?

子任务预估哪些部分使用AIGC实际中哪些部分使用AIGC
   
   
   
   
总结  

注:

  1. Copilot功能:

    1. 根据注释,函数名称,输入和返回参数补充代码

    2. 根据上下文代码补充缺失代码

    3. Copilot学习个人代码风格

    4. 写算法

    5. 写测试用例

    Copilot教程 Github copilot - 01 如何注册激活插件 | 全栈开发教程猫哥哔哩哔哩bilibili

  2. AIGC辅助编程样例 完整记录:ChatGPT成功编写游戏《飞翔的小鸟》 工程师全过程不写一行代码哔哩哔哩bilibili

  3. 预估/实际哪些部分使用AIGC时,请详细展开,例如:让小鸟飞行时扇动翅膀/解决小鸟飞出背景板的问题

  4. 可以适当张贴一些过程图片

 

博客要求

  1. 将项目放到github仓库,在博客中提交github仓库链接。

  2. 介绍项目的前端,特色的功能,以及完成项目中所用的技术、特殊的算法(实现思路)等等,可以用图表的形式展现。

  3. 编写单元测试,提供测试样例,并展示测试结果。最后对自己的测试设计进行评价,这些测试用例能满足该程序测试的要求吗?可以自行学习测试方法。

  4. AIGC表格。

  5. 你学会了什么内容?有什么心得体会?

  6. 运用PSP表格对任务进行分解,记录预估耗时和实际耗时。评价这次个人作业的完成过程和最终效果:哪里做的好,哪里还可以改进?

 

评分依据

  1. 完成度

  2. 运行速度(从输入筛选条件到获得相应题目文件夹的时间)

  3. 筛选条件:是否合理、细致,符合用户需求

  4. 前端:是否美观,是否便于用户操作,是否便捷

  5. 代码规范、可读性、注释等等

  6. 博客内容

  7. 若有不诚信行为,评为0分

     

附加分

  1. 以图表(或其他形式)显示实时爬取情况,如吞吐量等

  2. 爬取题目在前端显示

  3. 设置其他合理的筛选条件

  4. 以网页(或其他)的形式显示前端

  5. 以视频/plog等形式记录使用AIGC工具的过程

...全文
2930 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
0人已提交
完成率0%
暂无数据
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
YezineLbei 2023-09-16
  • 打赏
  • 举报
回复

123

社区成员

发帖
与我相关
我的任务
社区描述
2023秋-福州大学软件工程
软件工程 高校
社区管理员
  • fzusdn
  • 篱隙光远
  • Jason_Zhou1
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧