网络安全--姚峰.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月28日第一步, 先包含四个头文件: stdio.h, stdlib.h, errno.h , winsock2.h , 这四个文件分别提供输入输出支持 , 基本函数支持 , 错误处理支持 , 和网络服务支持。winsock2.h是WINDOWS下的网络头文件 , 如果是LINUX , 则需要包含以下提供网络支持的头文件:12345678910#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,请求方式) , 我们是谁(page.exe/1.0,软件名) , 请求的资源地址(/ , 其实就是根目录下的index.html 或者index.php等等一些首页文件) , 所请求服务器的主机名( host: , 上面的字符串未包含主机名, 需要在程序运行前由用户输入 .). 12#define BUF_SIZE 1024*1024#define DEF_HOSTNAME 上面的代码定义了一个缓冲区大小和默认的一个服务器主机名.下载文件的过程中, 需要一个缓冲区来保存数

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档