程序名稱: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聯系,快過年了,在這裡一並說下,祝你新年快樂!呵呵~