网站大量收购闲置独家精品文档,联系QQ:2885784924

网络安全--姚峰.docx

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络安全--姚峰

华北电力大学 科技学院 实 验 报 告 | | 实验名称:网络软件程序设计 课程名称: 网站下载器 | | 专业班级:网络12k2 学生姓名:姚锋 学 号:121909030228 成 绩: 指导教师: 实验日期: 《网络软件程序设计》课程设计 任 务 书 一、 目的与要求 任务:编写一个网站下载程序,可以按照要求下载整个网站的网页。 目的:使学生加深对网络通信协议、网络编程接口等基本概念、基本原理的理解,熟悉各种应用各种网络通信协议和网络编程接口编写网络应用程序的方法,拓宽学生的知识领域,锻炼学生的实践技能,培养学生科学的工作作风。 要求:基本功能完善,界面美观,方便易用,操作无误;通过课程设计学生应该学会使用各种网络通信协议和网络编程接口编写不同类型的网络应用程序,具备初步分析、设计和开发网络应用软件的能力,具备分析与检查软件错误、解决和处理实验结果的能力。 学生人数:1人。 二、 主要内容 网站下载程序可以按照要求下载整个网站的网页,其原理是分析每个页面中的所有链接,然后根据该链接下载单个文件,并保存下来,采用递归方式进行扫描下载,直到下载页数达到设定好的最大值或者下载层数达到了设定的最大层数才停止。为便于浏览,要处理好各个链接的关系。主要功能有: (1) 设定站点名称; (2)设定最大下载页; (3) 设定最大下载层; (4) 设定是否下载多媒体文件; (5) 设定是否下载其他站点网页; (6) 图形化显示 三、 进度计划 序号 设计内容 完成时间 备注 1 任务布置,资料查询,方案制定 周一 2 算法设计,程序实现 周二至周四 3 撰写报告,软件验收 周五 4 四、设计成果要求 完成规定的课程设计任务,所设计软件功能符合要求; 完成课程设计报告,要求格式规范,内容具体而翔实,应体现自身所做的工作,注重对设计思路的归纳和对问题解决过程的总结。 五、 考核方式 平时成绩+验收答辩+实验报告; 五级分制。 学生姓名: 指导教师:鲁斌 朵春红 2015年 12 第一步, 先包含四个头文件: stdio.h, stdlib.h, errno.h , winsock2.h , 这四个文件分别提供输入输出支持 , 基本函数支持 , 错误处理支持 , 和网络服务支持。winsock2.h是WINDOWS下的网络头文件 , 如果是LINUX , 则需要包含以下提供网络支持的头文件: 1 2 3 4 5 6 7 8 9 10 #include unistd.h //unix标准库 #include fcntl.h //低级文件控制 #include netdb.h?? //网络数据基本库 #include sys/select.h //select函数支持 #include sys/time.h //时间库 #include sys/socket.h?? //网络函数库 #include sys/types.h //数据类型定义 #include sys/stat.h //文件与目录 #include netinet/in.h //网络地址结构定义 #include arpa/inet.h //inet_ 函数库 1 #pragma comment( lib , ws2_32.lib) 上面的这行代码表示 , 程序在编译连接时 , 把目标文件和ws2_32.lib库文件连接在一起 . 之所以要这样 , 因为winsock2.h 头文件只包含各种函数的申明 , 它们的实现还需要从ws2_32.lib库文件中去查找 . 如果没有这个文件 , 编译连接时就不会通过 . 而”#pragma comment(lib , “xxx.lib”)”的目的主要是告诉编译器 , 在连接生成程序时 , 把xxx.lib文件也连接进来 . 当然也可以通过向编译器传递命令行参数来指定要连接的库文件, 那么就不需要在源文件中指明了. 如果你是在VC中编程 , 那么VC可能会自动去连接相关的库文件, 无需人工去指明了. 1 #define STR_MSG GET / HTTP/1.1rnUser-Agent: page.exe/1.0rnHost: 上面是个字符串, 属于HTTP请求的协议头的前半部分. 如果要从一个网站上下载一个页面, 就需要先连接上这个网站的服务器. 连接上后, 需要发送一条请求消息给服务器, 其实也就是个字符串, 其中包含要做怎样的请求(GET,请求方式) , 我们是谁

文档评论(0)

25811112 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档