- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
PAGE2
中国矿业大学计算机学院
2018级本科生课程报告
课程名称信息内容安全
报告题目针对知乎内容的爬虫程序
报告时间2021.7.6
姓名周俊杰
学号
任课教师曹天杰
2020-2021(二)《信息内容安全》课程报告评分表
序号
毕业要求
课程教学目标
考查方式与考查点
占比
得分
1
2.3
目标1:掌握信息内容安全的基本概念、分类、原理和相关技术,能够根据课程基本知识对信息内容安全领域出现的问题进行归类、分析、并有初步分析和解决问题的能力。
通过课堂讲授和课堂研讨掌握信息内容安全概念和理论知识。
40%
3.2
目标2:掌握信息内容安全处理相关的理论、技术以及健全的评价体系,能够根据具体问题分析算法、设计算法、实现算法并能综合评价算法。
2
4.3
目标3:掌握信息内容安全的基础知识,针对具体问题和要求选择正确的技术路线,通过在实验环境中进行仿真实验并能根据算法特点进行攻击测试和综合性能评价,得到具有参考价值的结论。
课程报告;实现有关信息内容安全的一个软件系统。分析和对比各项技术,选择相应的技术进行算法设计并在实验环境中进行仿真实验和性能评价,得到有效结论。
60%
总分
100%
评阅人:
2021年7月10日
报告摘要
知乎为中文互联网高质量的问答社区和创作者聚集的原创内容平台,其丰富多彩的内容有许多参考价值。然而其内容无法直接批量获取和存储。此系统采用python语句针对知乎,以问题、回答、用户等不同类别为入口,批量爬取其所有内容并存储于本地,便于整体阅读参考。
关键词:知乎;爬虫;python;
报告正文
1.1系统框架流程
1.2目录结构
目录分为.idea文件
脚本核心函数
功能模块zhihu
脚本入口GrandConcourse.py
详细如图所示:
2.内容摘要
GrandConcourse.py
这是脚本的启动入口.
根据不同需求分为:特定用户的回答,用户的想法及文章,特定的文章,特定的回答,某一问题下的回答,某收藏夹内容
将目标id填入相应的位置,并把不需要的目标id设为空()点击运行即可启动运行脚本。脚本通过检测相应id是否为空,从而选择运行对应的模块,所以不需要的目标id一定要设置为空。
在这里可以设置文件保存的本地路径
zhihu是功能模块,所有要实现的功能(爬取专栏、文章等)都在这个模块下实现。
实现的功能:article、collection、question、topic、user
其中article实现了单篇文章或专栏的爬取,question实现了单个或所有回答的爬取,user实现了针对用户的所有文章和所有回答
的爬取。这些模块之间并不是完全独立的,比如collection既有问答又有文章,在实现时使用了article模块的article和question模块的answer。
本文件实现了Controller和evaluate,前者用于爬取控制,控制程序的停止、爬取目标的下一页等,后者用于计算回答的评分,根据评分决定一个问题的某个回答是否收录。
评分由点赞数、回答日期、更新日期共同决定
说明:
这里实现了对单个回答或问题的所有回答的爬取,其中单个回答的爬取需要的是answer_id,而问题的所有回答需要的是question_id。通过相应的id发起网络请求,返回的json文件中包含的内容的主体,通过解析json文件获得文章的基本信息,生成一个msg对象,再将内容主体解析成BeautifulSoup对象,连同msg一起交给document下的有关类解析生成markdown文件。
说明:
document模块统一了文章、问答的markdown生成样式,两者的区别仅在于:文章类有背景大图,问答类有点赞数。
这两个模块接收内容主体的基本信息和内容主体,解析基本信息并编译成文章头。内容主体由parse模块下的Text类解析成markdown
形式并返回给这里的调用者。最后模块将文章头和主体合成一篇markdown文档,由外部提供保存路径保存到本地硬盘。
对于回答的内容划分为各种基本类,如文字、图片、链接、视频等
图示为视频类相关代码
说明:
Simple类是基类(接口),parse模块下的所有类都直接或间接继承了Simple类。凡是直接继承了
文档评论(0)