当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP的天空小偷

ASP
ASP正则表达式技巧
ASP Access实现网站计数器(访问量)
ASP新闻分页,将一篇过长的文章分页,生成静态页面
一些关于asp 购物车的想法
一个sql查询器,自动画表格填字段
ASP实现文件直接下载的代码
把网页中的(电话,qq等数字)生成图片的ASP程序
asp长文章用分页符来分页显示
Asp函数介紹(37个常用函数)
ASP中的面向对象类
分页实现方法的性能比较
asp ajax跨域提交数据
asp修改文件和文件夹的名字的代码
ASP 多关键词查询实例代码
asp被杀毒软件误删的解决方法
asp 多关键词搜索的简单实现方法
asp 根据IP地址自动判断转向分站的代码
asp dictionary对象的用法
ASP 千万级数据分页的存储过程
ASP隐藏真实文件的下载功能实现代码

ASP的天空小偷


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 169 ::
收藏到网摘: n/a

程序名称:ASP的天空小偷
程序类型:小偷,不太文雅啊,呵呵~
最新版本:没版本,因为,我不再更新了,有问题自己改
程序简介:这个没什么好说的~大家都知道
程序作者:小飞哥(这个ID,被封了,哎,犯错了)
下载地址:现在很多人都已经有了~就不用再找我要了!

下面的是我给一个朋友写的,关于如何改这个小偷的,不会玩的,自己看看~
其实要再改个其它的什么小偷也是很容易的事了
呵呵~

用到的函数说明
====================================================================
Instr()
函数返回字符或字符串在另一个字符串中第一次出现的位置.
表达式 Instr([start, ] strToBeSearched, strSearchFor [, compare])
允许数据类型: Start为搜索的起始值,strToBeSearched接受搜索的字符串 strSearchFor要搜索的字符.compare比较方式(详细见ASP常数)
实例: <%
strText = "This is a test!!"
pos = Instr(strText, "a")
response.write pos
%>
返回结果: 9
====================================================================
Mid()
函数返回特定长度的字符串(从start开始,长度为length).
表达式 Mid(string, start [, length])
实例: <%
strTest = "This is a test! Today is Monday."
response.write Mid(strTest, 17, 5)
%>
返回结果: Today
==================================================================
Abs(数值)
绝对值。一个数字的绝对值是它的正值。空字符串 (null) 的绝对值,也是空字符串。未初始化的变数,其绝对为 0
实例: <%
response.write ABS(-2000)
%>
返回结果: 2000
==================================================================
Replace( 字符串表达式,findnreplacewith[,start[,count[,compare]]])
将一个字符串取代 部份字。寻找待取代的原字符串 (find) , 若找到则被取代为新字符串 (replacewith) 。
find :待寻找取代的原字符串。
replacewith :取代后的字。
start :从第几个字开始寻找取代, 若未设定则由第一个字开始寻找。
count :取代的次数。 若未设定则所有寻找到的字符串取代字符 串全部被取代。
compare :寻找比较的方法, compare=0 表示二进制比较法, compare=1 表文字比较法, compare =2 表根据比较的 数据型态而定,若省略 compare 则为预设的二进制比较法。
实例: <%
response.write Replace("ABCD123ABC","AB","ab")
%>
返回结果: abCD123abC
===================================================================

程序中用到了一个过程是写好的
下面是源代码
<%
'SourceCode_0是页面取得的总数据
''SourceCode_1是截取需要内容所需的开始位置的代码'
''SourceCode_2是截取需要内容所需的结束位置的代?
''SourceCode_3是截取需要内容所需的代码中多余的内容
Function GetSourceCode(SourceCode_0,SourceCode_1,SourceCode_2,SourceCode_3)
between=instr(SourceCode_0,SourceCode_1)-instr(SourceCode_0,SourceCode_2)
first=instr(SourceCode_0,SourceCode_1)
GetSourceCode = Mid(SourceCode_0,first,abs(between))
GetSourceCode =replace(GetSourceCode,SourceCode_3,"")
end function
%>
这样子调用
<%
SourceCode="1a2b3c4d5e6f7g8h9i1j0k1l1m1n2o1p3qr1s4t1u5v1wx6y1z7"
''这里是定义一个字符串,后面要用到的,在实际的小偷程序中,这个变量是取到的软件页页的源码

response.write GetSourceCode(SourceCode,"1a2b","5v1wx6","1a2")
%>
返回结果: b3c4d5e6f7g8h9i1j0k1l1m1n2o1p3qr1s4t1u
===================================================================
另外,取得数据后要写入数据库
set rs=server.CreateObject("ADODB.RecordSet")
rs.open "select * from downtype",conn,3,2
rs.addnew '写入记录必需有这一句
rs("tname")=SoftClass_1 'rs("tname")这个是数据库中表 downtype 中的一个字段 ,字段名是tname ,也就是当前要写入内容的地方 ,SoftClass_1这个是在前面定义好的一个变量
rs("tj")=1
rs("tn")=rsb("id")
rs.update '写入记录这条也是必需的
===================================================================

开始干正事
先打开softwrite.asp 中找到以下这句
<!---<textarea name="textarea" cols="100" rows=20><%'response.write SourceCode%></textarea><BR>--!>
改成
<textarea name="textarea" cols="100" rows=20><%response.write SourceCode%></textarea><BR>
这样就可以看到,程序从天空软件站,实时取到的一些页面信息
当然,这里文本框输出的数据,已经是经过一次截取的,如果你要取的不是天空软件站的数据,那么还要先应的先修改,softwirte.asp 里的从91行开始到94行中的代码
betw=instr(SourceCode," <td vAlign=top width=540>")-instr(SourceCode,"* </b>为了达到最快的下载速度")
first=instr(SourceCode," <td vAlign=top width=540>")
SourceCode = Mid(SourceCode,first,abs(betw))
SourceCode =replace(SourceCode,"http://count.skycn.com/softdown.php?id="&Id&"&url=","")
就是这些了,这里面用到了也就只有三个函数,instr mid replace 在前面都已经有说明了,都是最基本的应用,要是看不明白这里的程序,就先到前面看看,这几个函数的说明,搞明白了,这里的代码也就明白了
这几句代码的作用就是取截取到的一部份的页面信息,删除一个无用的信息
另外这里截取到的页面信息也是为后台的程序用的,比如,取一个软件的名字都是从这里已经截取的信息中再取相应的东西出来,写到数据库中的

当然,如果你的电脑上已经有IIS的话,就可以打程序COPY过去就可以看到效果了

从softwrite.asp里的131行开始才是真正截取软件相关的一些信息的,如果要改成截取其它的内容,这里当然也要相应的做改动
dim SoftName,SoftSize,SoftLan
''上面的这句是定义一些变量,方便调用
SoftName=GetSourceCode(SourceCode,"<b><font color='#004FC6' size='3'>","</font></b></td></tr>","<b><font color='#004FC6' size='3'>")
''这句就是截取软件名称的,用到的就是 GetSourceCode()这个过程,前面已经有说明的,不明白的再看前面的说明
...
从131行到159行,都是截取软件相关信息的,都是只用到 GetSourceCode()这个过程

最后,所有的软件信息都截取了,存入相应的变量中,剩下的就是写入数据库的部份了,如果说你的应用都只是盗取人家的下载站的软件信息到惊云中,后面的部份就不用更改了,就可以用,当然这里要说明的是,所有前面定义的变量不能更改为别的,要是改了,后面部分的也要相应更改,要不会出错的
关于写入数据库的部份,内容太多我一下子也说不清楚,在最前面我已经简单的说明了一下,你可以去参改一些书,那样,学ASP会更快一些
就这些了,其它的你要是不明白,我们再QQ联系,快过年了,在这里一并说下,祝你新年快乐!呵呵~