今天是: + 登录 + 注册 + 控制面板 + 加入收藏 + 设为首页 + +
  →采集系统演示  →娱乐社区演示站    →BT下载  
顾客至上,信誉第一 首页 · 新闻公告 · 下载中心 · 帮助中心 · 产品购买 · 主机空间 · 网络学院 · 技术论坛 · 网站建设
推荐下载
SK信息采集+风讯CMSV4.0 Sp5整
SK信息采集(科汛CMS)整合版3.3
SK信息采集系统V3.3版(单机版)
SK信息采集系统V3.2版 
SK信息采集系统(单机)版V3.1 B
SK信息采集整合(科汛CMS)插件V
SK产品
 
技术文章
SK信息采集安装教程(单机版)
图片采集规则操作演示
sk信息采集3.0视频教程
SK信息采集系统简介
信息采集方案
新闻采集帮助
SK采集基本使用帮助
购买指南
购买步骤
汇款方式
功能对比
产品报价
版本历史
联系我们
购买咨询QQ:软件购买咨询询留言
技术服务QQ:技术服务
手机:(0)13860892492(购买咨询)
电话: 0596-2821043(售后技术服务)
联系邮箱:skxiu2006@sina.com
友情链接

  科汛网络  风讯CMS   网行天下
  中国站长  中国2399分类网

当前位置:SK网络 >> 网络学院 >> 采集专区 >> 浏览文章
说说采集加入库(菜鸟版)

一次听到小偷程序很好奇,于是下了个研究研究。看到小偷使用的几个主要函数,instr,mid,replace...等等,然后我结合了数据库将采集的数据写进去,很有成就感,呵呵,我相信还有好写朋友不知道怎么弄,下面我来说说我懂的一点皮毛!
  先说说几个函数的用途吧,这个对新手来说是最主要的。。。

1 : instr(start,string1,string2,compare)
这个函数返回string2在string1中第一次出现的位置,start表示开始搜索的位置,可省略(省略时表示从string1开始位置搜索),compare表示在计算子字符串时使用的比较类型的数值(我从来没用过,一般都省略好了)

说的可能不够清楚,举几个例子
  num = Instr(1, "SearchString", "c"),返回为num=5,因为"c"在"SearchString"中第一次出现的位置是5
  num = Instr("SearchString", "c"),返回为num=5,1省略表示从开始搜索,同上一样
  num = Instr(5, "SearchString", "c"),返回还是5,但Instr(6, "SearchString", "c")返回0,因为从第6位开始找不到字符"c"了


2 : mid(string,start,length)
  这个函数从字符串中返回指定数目的字符。
  如我们想从"abcdefghijklmn"中得到"efg",可以用如下形式mid("abcdefghijklmn",5,3)则返回"efg",式中5表是"e"开始的位置,3表示字符串长度
  
写到这里我们结合前面instr函数来写写怎么获得"efg"
首先,用instr函数得到"efg"字符出现的位置,如下start=instr("abcdefghijklmn","e"),如此mid("abcdefghijklmn",5,3)中的5就可以用start代替,mid("abcdefghijklmn",start,3)同样返回"efg"
  
如果我们不知道所要获得的字符串长度,可以再用一次instr函数先得到"h"出现的位置,如下end=instr("abcdefghijklmn","h"),如此我们可以得到字符串的长度length=end-start,(有人可能会说用len("efg")不是可以得到"efg"的长度吗?,问题是当我们连我们要得到什么数据都不知道,而只知道字符串结束后的第一个字符时。。。。小偷程序就是这样)

3 : split(string1,string2)
废话不说,直接讲怎么用吧,假如我们有如下字符传"abxcdfxfghixhnmgsff",我们用str=split("abxcdfxfghixhnmgsff","x"),结果就是str(0)="ab",str(1)="cdf",str(2)="fghi",str(3)="hnmgsff",看出什么了吗,split(string1,string2)用string2分割string1,返回是一个数组,大家可以从例子看出。

说到split(string1,string2)函数随便说说另一个很有用的函数ubound(string),返回指定数组维数的最大可用下标。 如上面得到的str,我们用ubound(str),返回就是3,因为str数组最大可用下标就是3

关于函数的详细大家可以查看我附件中的 VBscript 速查手册.chm

其实上面的说了等于白说,还是举几个例子比较容易懂
  如我们要获得http://read.hjsm.tom.com/book/6094/html/2001.html这个网页下的文章标题,和内容


用getHTTPPage(url)函数得到网页源码,getHTTPPage(url)函数我用了前些天写采集入库技术的作者编的函数,源码请看http://www.im286.com/viewthread. ... amp;extra=page%3D18

用法如下
url="http://read.hjsm.tom.com/book/6094/html/2001.html"
http=getHTTPPage(url)

得到http=

新宋幻剑书盟 > 阿越的会客室 > 新宋 > 新宋目录

第一卷 十字


第一节 熙宁二年


我完全不记得我是怎么样来到这个世界了。但是当我知道自己居然成为又一位回到古代的同志,并且是回到了被陈寅恪称之为“华夏民族之文化,历数千记得曾经有人写过最想生活的十个历史时期,宋仁宗柳永的时代赫然入选,现在虽然是西。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。只有大户人家才用得起了。

唐棣虽然不太看得起生意人,但是对我这种新奇的发明,却也很是赞叹。不到一个冬季,我就由一无所有变成一个小财主,也是唐棣所料想不到的。但是我所得意的却是这是自己来到古代后,给这个世界带来的第一个变化。


© 幻剑书盟整理


中间省略内容n多


我们如何先得到“第一节 熙宁二年”这个标题呢,用instr()函数得到"

"字符串出现的位置,如下start=instr(http,"
")然后加上"
"的长度len("
")即得到标题出现的首位置,再用instr()函数从start开始查找"
"第一次出现的位置,end=instr(start,http,"
"),到此我们就可以算出标题的长度
length=end-(start+len("
"))
用mid()函数得到标题
biaoti=mid(http,start+len("
"),length)

按照上面的方法还可以得到文章的内容,具体不在这废话,大家可以从附件中找到完整的代码,里面有详细的注释
并且简单补全了前几天那位作者的入库函数,大家可以看到程序如何获得数据,并加到数据库中,看着实例学习是我认为最简单的学习方法,程序正常工作后的那个成就感。。。。。。。奥,,,,,,,呵呵

发表评论】【告诉好友】【打印此文】【收藏此文】【关闭窗口
[2007年05月29日]   来源:不详     【字体: 】【双击滚屏
上一篇:asp小偷生成静态页面的一般方法 下一篇:ASP小偷偷取地址并生成html
 
Copyright © 2006-2008 Skxiu.com

 版权所有 © 2006-2008 SK网络 www.skxiu.com 闽ICP备 06016779号