当前位置: 网学 > 编程文档 > ASP > 正文

网络编程:网络蜘蛛的秘密

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/17
下载{$ArticleTitle}原创论文样式
t;Stocks prices fall</a><a href="/news/8095.asp">Ne w movies today</a><a href="/news/8096.asp">Bush and&nb sp;Gore to debate tonight</a><a href="/news/8097.asp"> Fall TV lineup</a><!--end headlines--></BODY></HTML>


  在这个页面内,我们只关心位于“put headlines here”和 “end headlines”这 两个标记之间的东西。你可以构建一个只返回该区域查找结果的功能设置:

Function GetText(strText, strStartTag, strEndTag)
dim intStart
intStart = instr(1, strText, strStartTag, vbtextcompare)
if intStart then
intStart = intStart + len(strStartTag)
intEnd = InStr(intStart + 1, strText, strEndTag, vbtextcompar e)
GetText = Mid(strText, intStart + 1, intEnd - intStart&n bsp;- 1)
else
GetText = " "
end if
End Function

  按照上面构建ITC控件的例子,你可以很容易地将strHTML中的“ <!--put headlines here-->”和 “<!--end headlines-->”作为参数传 送到GetText中。

  要注意,用于开始和结束的标记都不一定要是实际的HTML专用标记——它们可以是你想使用的任何文本界 定符。在通常情况下,你不容易找到好的HTML标记来界定搜寻区域。你只能使用比较方便称手的标记——例如 ,你的首尾标记可以分别如下:

 strStartTag = "/td><td><font face="arial" size=&q uot;2"><p><b><u>"
 strEndTag = "<p></td></tr><tr><td><o:ums>&quo t;

  一定要确定搜索的是HTML页中比较独特的标识,这样你才可以准确地获得你需要的东西。你也可以按照你 所返回的文本部分中的链接进行搜寻,不过如果你不知道那些页面的格式,你的网络蜘蛛将无功而返。


五、保存信息

  在大多数情况下,你会要求将收集到的信息保存在一个数据库中,以备以后使用。你的需求也许包括很广 泛的内容,但是在此之前,你要记住以下几件事:

  在你的数据库中查找最新信息

  如果你经常使用网络蜘蛛去查找一个站点内的新闻标题,你要先确定比较新的标题已经存在于数据库内。 然后将其与网络蜘蛛返回的结果相比较,只添加更新过的部分。这样可以防止你保存一大堆重复数据。

  更新信息

  也许你根本就不想从外部向数据库中添加新信息。比如,如果你维护的是一个美国各州人口的网上索引, 你只需要在数据库内部更新——你将不需要在表格内插入新的信息。

  保存所需信息
如果你在查找标题,要确定你也同时查找了该标题指向的链接,并将其保存下来。如果没有链接,你 也应该建立一个。例如,如果我从www.yoursite.com查找标题,并在www.mysite .com演示,而该标题与一篇在站点之外的文章有链接,那么我必须先保存http://www.you rsite.com这一链接,然后再保存其它链接到数据库内,这些链接才可以正常访问。


  六、结论

  我们已经简要介绍了如何构建一个比较完整的网络蜘蛛。所有的基本功能都已涉及。现在你需要做的就是 再在里面加上你自己的东西。

  这一类功能将被应用在一个COM对象或者一个独立的应用软件内。在ASP中设置这项功能非常方便, 但是你应该将你的编码移到另外的地方,以提高速度和安全性。而且这样也可以令其更容

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号