首页 | 站长免费中心 | 新手上路 | 网站运营 | 网页制作 | 图片设计 | 动画设计 | 网页编程 | 网页特效 | 本站专题 | 虚拟主机 | 域名注册 | 网站建设 | 程序下载
       免费空间资源 | 新闻咨询 | 免费域名 | 免费网盘 | 网站推广 | 网站策划 | 建站经验 | 网站优化 | 网页代码 | 源码下载 | 音乐小偷 | 网络赚钱 | 论坛交流
网站建设
网站建设
虚拟主机
虚拟主机
域名注册
域名注册
711网络首页
站长工具
站长工具
网站源码
网站源码
站长论坛
站长论坛

 711网络 网页编程音乐小偷

说说采集加入库(菜鸟版)

来源: 互联网    日期:2006-5-15
 


第一次听到小偷程序很好奇,于是下了个研究研究。看到小偷使用的几个主要函数,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=

<HTML><HEAD><script src="/stat/counter.php?bookid=6094"></script><META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=gb2312"><META HTTP-EQUIV="Content-Language" CONTENT="zh-CN"><LINK REL="stylesheet"    TYPE="text/css"     HREF="book.css" TITLE="formal"><TITLE>新宋</TITLE></HEAD><body bgcolor="#E4ebf1" text="#000000"><script language="javascript" src="/chaphead.js"></script><A title="去首页看看" HREF="http://www.hjsm.net"><font color=blue>幻剑书盟</font></a> > <A title="去作者会客室坐坐" HREF="http://www.hjsm.net/author/1823/index.php"><font color=blue>阿越的会客室</font></a> > <A title="去该书首页瞧瞧" HREF="http://www.hjsm.net/book/6094/index.php"><font color=blue>新宋</font></a> > <A title="去看书吧" HREF="http://www.hjsm.net/book/6094/html/contents.html"><font color=blue>新宋目录</font></a><BR><P><TABLE WIDTH=650 ALIGN=CENTER><TR><TD COLSPAN=3  width=100%><DIV class=headtitle align=left><B>第一卷 十字</B></div><BR>
<DIV class=title align=center>第一节 熙宁二年</div><HR>
<p>我完全不记得我是怎么样来到这个世界了。但是当我知道自己居然成为又一位回到古代的同志,并且是回到了被陈寅恪称之为“华夏民族之文化,历数千记得曾经有人写过最想生活的十个历史时期,宋仁宗柳永的时代赫然入选,现在虽然是西。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。只有大户人家才用得起了。<p>唐棣虽然不太看得起生意人,但是对我这种新奇的发明,却也很是赞叹。不到一个冬季,我就由一无所有变成一个小财主,也是唐棣所料想不到的。但是我所得意的却是这是自己来到古代后,给这个世界带来的第一个变化。
</TD></TR><TR height=60 valign=center><td colspan=3> </td></tr><TR align=center><script language="javascript" src="pagescript.js"></script><TR VALIGN=BOTTOM HEIGH=60><TD COLSPAN=3><HR>© <A HREF="http://www.hjsm.net"><font color=blue>幻剑书盟</font></A>整理</TD></TR></TABLE>

中间省略内容n多


我们如何先得到“第一节 熙宁二年”这个标题呢,用instr()函数得到"<DIV class=title align=center>"字符串出现的位置,如下start=instr(http,"<DIV class=title align=center>")然后加上"<DIV class=title align=center>"的长度len("<DIV class=title align=center>")即得到标题出现的首位置,再用instr()函数从start开始查找"</div>"第一次出现的位置,end=instr(start,http,"</div>"),到此我们就可以算出标题的长度
length=end-(start+len("<DIV class=title align=center>"))
用mid()函数得到标题
biaoti=mid(http,start+len("<DIV class=title align=center>"),length)

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


更多的说说采集加入库(菜鸟版)请到论坛查看: http://BBS.TC711.COM



【 双击滚屏 】 【 评论 】 【 收藏 】 【 打印 】 【 关闭 】 来源: 互联网    日期:2006-5-15   

发 表 评 论
查看评论

  您的大名:
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款
认证编码: 刷新验证码
点评内容: 字数0
  精品推荐  
  本月推荐  
  友情赞助  

关于我们 | 联系我们 | 广告投放 | 留言反馈 | 免费程序 | 虚拟主机 | 网站建设 |  网站推广 |  google_sitemap baidu_sitemap RSS订阅
本站所有资源均来自互联网,如有侵犯您的版权或其他问题,请通知管理员,我们会在最短的时间回复您
Copyright © 2005-2015 Tc711.Com All Rights Reserved 版权所有·711网络   蜀ICP备05021915号
110网监备案 信息产业备案 不良信息举报