加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

翻旧账,自己参加工作一年时写的设计文档

发布时间:2020-12-17 01:02:28 所属栏目:安全 来源:网络整理
导读:看着曾经自己写的文档,一丝笑意涌过心头。一分是为当时稚嫩的设计,一分是为当时入神入微,矜矜业业的态度。 这个设计是一个系统的数据抓取部分的设计,如果现在让我设计,肯定完全是另一个样。此系统早已不再运行,所以可以放心的拿出来,仅博一笑。 XXXX

看着曾经自己写的文档,一丝笑意涌过心头。一分是为当时稚嫩的设计,一分是为当时入神入微,矜矜业业的态度。


这个设计是一个系统的数据抓取部分的设计,如果现在让我设计,肯定完全是另一个样。此系统早已不再运行,所以可以放心的拿出来,仅博一笑。



XXXX站点监控——详细信息爬虫设计

版本:V0.1

作者:XX

时间:2010-9-13

需求

根据视频title及页面URL,到具体网页中抓取视频各项属性及信息。

?

功能需求点

概述

输入

提供webservice接口供主控调用,异步启动爬虫任务。

输出

1.?????? 在正常接收、启动任务后立即给主控返回接收成功。

2.?????? 在完成任务/任务失败后调用主控提供的回调接口。

3.?????? 抓取成功后,将抓取数据保存至数据库。

错误处理

抓取异常情况下,应该将错误原因汇报给主控,并记录日志。

并发性需求

模块支持多线程并发调用。

?

?

实际情况调研

根据各XXXX网站HTML源码分析,在界面/结构上基本相同,但在不同网站、或者同一网站部同视频间存在若干细微的“版本”差异,所以需要在开发过程中,制定良好的爬取方案以适应各站点视频页面上的变化。

接口设计

使用WebService接口,SOAP协议。

?

l? 版本

http://xxxxx/netvideo/bokecc/vinfoant/version?wsdl

INTPUT:NULL

?

OUTPUT:当前版本

如 0.1

?

?

?

l? 爬取

http://xxxxx/netvideo/bokecc/vinfoant/run?wsdl

?

INPUT:


参数

描述

类型

备注

dbip

连接数据库IP

String

?

dbport

连接数据库端口

Integer

?

dbname

数据库名

String

?

dbuser

数据库用户名

String

?

dbpw

数据库密码

String

?

videoId

需爬取的视频id

Integer

?

sessionId

任务id

Integer

?

timeout

超时时间

Integer

?

callbackAddr

回调地址

String

任务完成之后调用的地址

?

OUTPUT:

Responese(WebService调用同步返回):

Id

描述

0

接受成功

-1

主控身份错误,禁止进入

-2

数据库连接失败

?

Callback(WebService调用异步返回):


参数

描述

类型

备注

sessionId

任务id

Integer

?

status

任务完成状态

Integer

0 成功

-1 网络情况异常

-2 正则表达式匹配错误

?

?

?

?

?

?

?

?

?


?

流程设计

1.? 爬取任务整体流程

【无法贴图】

?

2.? 内容匹配流程

【无法贴图】

?

日志设计

日志条目

级别

记录信息

WebService接口被调用

Info

调用方IP及各接口参数

主控身份校验失败

Warn

调用方IP

开始建立/更新数据库连接池

Info

数据库参数

数据库连接失败

Error,Notify

失败原因

数据库连接成功

Info

?

开始启动爬虫任务

Debug

?

开始抓取网页

Info

URL

一次网页抓取超时

Warn

当前重试次数

一次网页抓取异常

Warn

异常原因

重试范围内网页抓取失败

Error,Notify

?

网页抓取成功

Debug

?

开始内容匹配

Info

?

正则表达式匹配失败

Error,Notify

失败字段、失败原因

正则表达式匹配成功

Debug

?

开始更新数据库

Info

?

SQL操作

Debug

SQL语句

更新数据库完成

Debug

?

写数据库异常

Error,Notify

当前执行的SQL语句,异常原因

任务成功

Info

?

技术选型

开发平台: ?windowsXP

部署平台: ?跨平台

编程语言:python2.5

IDE+plug-in:MyEclipse 7.0 + pydev

?

具体使用的python技术:

功能

技术选型

网页抓取

urllib2

内容解析,正则表达

re

WebService

ZSI2.0

SOAP协议

SOAPpy(ZSI依赖)

XML

pyXML(ZSI依赖)

Web服务器

ZSI自带SOAP SERVER 或Apache

发布、部署

Windows平台:py2exe

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读