游侠补丁网 入库 惊云
1.以下代码存储为一个***.asp到admin/目录下,比如youxia.asp ,注意适当修改注释部分.
| CODE: |
[Copy to clipboard] |
<%Admin='DownAdd'%> <!--#include file='check.asp'--> <!--#include file='mdb_path_down.asp'--> <!--#include file='config.asp'--> <!--#include file='char.inc'--> <style> body{ font-size:12px; font-family:verdana; } </style> <% if request('action')='Alibaba' then if request('status')='start' then session('StartId')=request('StartID') session('EndId')=request('EndId') session('NowId')=request('StartID') if request('makehtml')=true then session('makehtml')='yes' end if if session('NowId')<>session('EndId')+1 then response.write '<meta http-equiv=''refresh'' content=''0;url='ali.asp?action=Alibaba'''>' response.write '正在获取ID为:' & session('NowId') & '的数据! 您输入的起始id为:' & session('StartId') & ' 输入id为:' & session('EndId')
strHTML=getHTTPPage('http://patch.ali213.net/view.asp?id=' & session('NowId')) if strHTML='' then response.write '<p>此ID有错误发生!程序将忽略它继续采集!</p>' else '获取到了HTML '-------------------------------------------------------------- title=mymid(strHTML,'<td[^>]+><div[^>]+>\s<font[^>]+>(.+?)<\/font><\/div><\/td>') '标题 response.write '<p>' & title & '</p>'
category=mymid(strHTML,'<td[^>]+><div[^>]+>类型:(.+?)<\/div><\/td>') '类别 response.write '<p>' & category & '</p>'
softsize=mymid(strHTML,'<td[^>]+><div[^>]+>大小:(.+?)<\/div><\/td>') '大小 response.write '<p>' & softsize & '</p>' downloadURL='http://patch.ali213.net/' & mymid(strHTML,'<a href=''([^'']+)'' target=''blank''>点击下载<\/a>') '下载地址 response.write '<p>' & downloadURL & '</p>' '-------------------------------------------------------------- '数据库操作开始
set rs=server.CreateObject('ADODB.RecordSet') sql='select * from down where (id is null)' rs.open sql,conn,1,3 rs.addnew tid=findtid(category) rs('tid')=tid '类别 rs('cxn')=title '标题 rs('size')=softsize '大小 rs('user')=JyDownAdminName rs('date')=Now() rs('body')=htmlencode(title) '##############################################################配置以下默认值 rs('cxv')='' '版本 rs('yy')=1 '语言 rs('cd')=1 '类别 rs('sq')=1 '授权 rs('pic')='' '图片地址 rs('reg')='' '注册链接 rs('ln')='' '程序演示地址 rs('lu')='' '作者或厂商主页 rs('gs')=0 '格式 rs('show')=1 '是否显示 rs('system')='' '操作系统 rs('hot')=4 '等级 rs('hy')=0 '是否会员 '##############################################################配置以下默认值 rs.update
sql='select top 1 id from down order by id desc' rs.open sql,conn,1,1 if not rs.eof then newid=rs('id') end if rs.close
'insert下载地址 sql='select * from downfile where (id is null)' rs.open sql,conn,1,3 rs.addnew rs('downid')=newid rs('downno')=1 rs('filename')='马上下载' rs('file')=downloadURL rs.update rs.close '生成html页 if session('makehtml')='yes' then response.write('<script>window.open(''down_makesoft.asp?type=page&id='&newid&''','''',''width=200,height=100,resizable=yes,scrollbars=yes,status=yes,toolbar=no,menubar=no,location=no'')</script>') end if
end if
session('NowId')=session('NowId')+1 'response.end else response.write '完成!' session('StartId')='' session('EndId')='' session('NowId')='' end if else session('StartId')='' session('EndId')='' session('NowId')='' %> <SCRIPT LANGUAGE='JavaScript'> <!-- function checkinput() { if (document.all.StartID.value=='' || document.all.EndId.value=='')// || (document.all.StartID.value > document.all.EndId.value)) { //alert(document.all.StartID.value>document.all.EndId.value); alert(document.all.StartID.value); alert(document.all.EndId.value); alert('输入错误!请检查输入'); return false; } else { return true; } } //--> </SCRIPT> <FORM METHOD=POST ACTION='ali.asp' onsubmit='return checkinput();'> <INPUT TYPE='hidden' name='action' value='Alibaba'> <INPUT TYPE='hidden' name='status' value='start'> 开始<INPUT TYPE='text' NAME='StartID'>结束:<INPUT TYPE='text' NAME='EndId'> <INPUT TYPE='checkbox' NAME='makehtml'>直接生成HTML <INPUT TYPE='submit'> </FORM> <% end if '##############################################################类别 ' 以下类别必须手动构造(偷懒了^_^) ' 免CD,升级档,修改器,存档,其他 '------------------------------------------------------------------- function findtid(byval CatString) select case CatString case '免CD' findtid=238 '修改这个ID为'免CD'的ID case '升级档' findtid=239 '修改这个ID为'升级档'的ID case '修改器' findtid=240 '修改这个ID为'修改器'的ID case '存档' findtid=241 '修改这个ID为'存档'的ID case else findtid=242 '修改这个ID为'其他'的ID end select end function '##############################################################类别
'关闭数据库链接 conn.close set conn=nothing
'正则式内容截取函数 function mymid(byval A_strString,byval A_strPattern) dim MM_objRegexp dim MM_strExecute
set MM_objRegexp=new regexp with MM_objRegexp .Pattern=A_strPattern .IgnoreCase=True .Global=false set MM_strExecute=.Execute(A_strString) if MM_strExecute.count<>0 then mymid=MM_strExecute(0).SubMatches(0) end if end with mymid=trim(mymid) set MM_objRegexp=nothing end function
'-------------------------------------------------------------------------------- function getHTTPPage(url) on error resume next dim http set http=Server.createobject('Microsoft.XMLHTTP') Http.open 'GET',url,false Http.send() if Http.readystate<>4 then exit function end if getHTTPPage=bytes2BSTR(Http.responseBody) set http=nothing if err.number<>0 then err.Clear end function Function bytes2BSTR(vIn) dim strReturn dim i1,ThisCharCode,NextCharCode strReturn = '' For i1 = 1 To LenB(vIn) ThisCharCode = AscB(MidB(vIn,i1,1)) If ThisCharCode < &H80 Then strReturn = strReturn & Chr(ThisCharCode) Else NextCharCode = AscB(MidB(vIn,i1+1,1)) strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode)) i1 = i1 + 1 End If Next bytes2BSTR = strReturn End Function
Sub ExcludeAd() strbody=replace(strbody,'<body bgcolor=''#ebf1f7''>','') End Sub %> | |
2.修改left.asp,做上此文件的连接.
| CODE: |
[Copy to clipboard] |
......
<tr> <a href='down.asp'><td width='100%' class='JyDownList' onmouseover=this.className='JyDownList2'; onmouseout=this.className='JyDownList';><b> <font color='#FFFFFF'> 软件管理</font></b></td></a> </tr> <tr> <a href='youxia.asp'><td width='100%' class='JyDownList' onmouseover=this.className='JyDownList2'; onmouseout=this.className='JyDownList';><b> <font color='#FFFFFF'> 游侠网采集</font></b></td></a> </tr> ...... | |