|
复制代码 代码如下: <% DJ54_path = "data/data.mdb" '数据库地址 Set conn= Server.CreateObject("ADODB.Connection") connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath(DJ54_path) conn.Open connstr Function GetHttpPage(HttpUrl) If IsNull(HttpUrl)=True Or HttpUrl="$False$" Then GetHttpPage="$False$" Exit Function End If Dim Http Set Http=server.createobject("MSXML2.XMLHTTP") Http.open "GET",HttpUrl,False Http.Send() If Http.Readystate<>4 then Set Http=Nothing GetHttpPage="$False$" Exit function End if GetHTTPPage=bytesToBSTR(Http.responseBody,"GB2312") Set Http=Nothing If Err.number<>0 then Err.Clear End If End Function
Function BytesToBstr(Body,Cset) Dim Objstream Set Objstream = Server.CreateObject("adodb.stream") objstream.Type = 1 objstream.Mode =3 objstream.Open objstream.Write body objstream.Position = 0 objstream.Type = 2 objstream.Charset = Cset BytesToBstr = objstream.ReadText objstream.Close set objstream = nothing End Function
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 RegListGet(str,patrn,mysky) set tempReg=new RegExp tempReg.IgnoreCase=false tempReg.Global=true tempReg.Pattern=patrn set matches=tempReg.execute(str) for each match in matches content=content&match.value&mysky next RegListGet=content set matches=nothing set tempReg=nothing end Function
DJ54_SF = GetHttpPage("http://www.haosf.com/") DJ54_SF = replace(DJ54_SF,vbcrlf,"") DJ54_SF = replace(DJ54_SF,chr(10),"") DJ54_SF = trim(mymid(DJ54_SF,"zjkf.asp"&chr(34)&"></script>(.+?)<script language=javascript src="&chr(34)&"txtj2.asp"&chr(34)&">")) DJ54_SF = RegListGet(DJ54_SF,"<script>o(.+?)</script>","BT54") DJ54_SF = replace(DJ54_SF,"\","") DJ54_BT54_SF = split(DJ54_SF,"BT54") response.write "采集成功 共采集当日"&Ubound(DJ54_BT54_SF)-1 &"个SF<br/>"
set rs = server.createobject("adodb.recordset") sql = "select * from sfdata" rs.open sql,conn,1,3 for i =1 to Ubound(DJ54_BT54_SF)-1 SF = mid(DJ54_BT54_SF(i),instr(DJ54_BT54_SF(i),""&chr(34)&"")+1,len(DJ54_BT54_SF(i))-48) DJ54_BT54_RSF = split(SF,""&chr(34)&","&chr(34)&"") if len(DJ54_BT54_RSF(2)) < 16 then rs.addnew SFtime = trim(mymid(DJ54_BT54_RSF(3),"日/(.+?)点")) SFtime = replace(SFtime,"日/","") SFtime = replace(SFtime,"点","") rs("name") = DJ54_BT54_RSF(1) '名称 rs("ip") = DJ54_BT54_RSF(2)'IP rs("sdate") = year(date) &"-"&month(date)&"-"&day(date) &" " & SFtime &":00:00" rs("Xingzhi") = DJ54_BT54_RSF(5)'性质 rs("email") = DJ54_BT54_RSF(6)'QQ rs("homepage") = DJ54_BT54_RSF(0)'网 rs("addtime") = now() rs("gameid") = 28 rs("Ulock") = 1 rs("service") = 2 rs("addr") = DJ54_BT54_RSF(4) end if response.write DJ54_BT54_RSF(1) & "入库成功!<br/>" next response.write "全部入库完成" %>
|
|