90 likes | 189 Views
网址抽取程序. 概要设计. 组别:第一组 组员:范俊良,高翔,汪公玉,刘月馨(排名次序不分先后) 组长:白世俊 技术总监:王中开. 完成时间: 2010 年 10 月 1 日. 1 引言 1.1 编写目的 我们小组希望通过编写网址抽取系统,了解和掌握 C 语言以及数据库的知识和操作,达成搜索,识别,提取互联网上网址的目的。 编写本概要设计说明书的目的是为了让组员充分了解我们要做的工作并制定完善的个人计划。 本概要设计说明书的预期读者为第一小组全体组员 1.2 项目背景 拟开发软件的项目名称 : 网址提取程序。
E N D
网址抽取程序 概要设计 组别:第一组 组员:范俊良,高翔,汪公玉,刘月馨(排名次序不分先后) 组长:白世俊 技术总监:王中开 完成时间:2010年10月1日
1引言 • 1.1编写目的 • 我们小组希望通过编写网址抽取系统,了解和掌握C语言以及数据库的知识和操作,达成搜索,识别,提取互联网上网址的目的。 • 编写本概要设计说明书的目的是为了让组员充分了解我们要做的工作并制定完善的个人计划。 • 本概要设计说明书的预期读者为第一小组全体组员 • 1.2项目背景 • 拟开发软件的项目名称:网址提取程序。 • 该项目的任务提出者为何老师,开发者为Team One • 项目的委托单位:无 • 开发单位:Team One • 该软件运行于Linux Ubuntu操作系统
2 任务概述 • 2.1 目标 • 搜索抓取网页,根据给出的首网址,下载该网址并检索出该网址内全部链接,并逐一对链接进行分析,根据链接再抓取网页。,重复上述步骤。 • 2.2 运行环境 • 硬件环境: 80x86兼容PC机 • 软件环境: Linux ubuntu shell • 2.3 需求概述 • 需要实现的功能: • 通过给定的网址从该网站提取其他网址,并将其保存,再分别将每条网址解析重复提取网址的步骤 • 2.4 限制描述 • 本系统目前还没有完成的功能如下: • 不能显示已提取网页的具体信息及网页内容。
开始 输入网址 下载该网址代码 分析代码提取网址 将网址存入数据库 从数据库抽取网址 结束 • 3.总体设计 • 3.1基本设计概念和流程处理 • 第一部分:下载网页并保存; • 第二部分:分析网页; • 第三部分:把分析后的网址结果保存到数据库中; • 第四部分:从数据库提取网址重复上述步骤; • 3.2系统总体流程 3.2.1主流程图:
开始 网址是否合法 No Yes 下载开始 保存网页代码 结束 3.2.2程序分块流程: 下载网址代码:
开始 判断同时满足<a,href,= No Yes 遇到字母或”:”提取 满足space,<,>,{,},’,”,\0中任意一个 No Yes 提取结束 结束 分析代码提取网址:
开始 进入数据库 取网址 以字符串形式存入数组 取出字符串用wget函数下载 结束 从数据库抽取网址:
4.关键函数 1、数据库操作函数:creat_db,insert_db,update_db,get_a_record 主要实现数据库的创建以及数据的写入,查询和读取。 2、下载网页函数:download_addr 主要实现网页源代码的下载。 3、信息解析函数:w_message 主要实现获取正确的网址。 4、主函数:main.c 调用各子函数实现软件功能。
5. 程序性能 该程序可以实现从给定网址内抽取符合网页格式(本程序规定以“<a”“ herf ”“=”开头)的网址并将其分析处理存入数据库,再以数据库内网址为目标进行如上操作,达到网络网址下载的目的,结构简单,运行可靠。