⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cl_clscollect.asp

📁 淘客网上商店网站程序 淘客网上商店网站程序 淘客网上商店网站程序
💻 ASP
📖 第 1 页 / 共 4 页
字号:
<%
'========================================
'	Edit by GDWneo
'	Last modify at 9:22 2007-9-6
'========================================

Const ContentPreview = "Yes"
Rem 是否开启正文预览功能

Dim CGet,CGetThumb
Set CGet	= New Cls_Collection
Set CGetThumb	= New Cls_Thumb



Class Cls_Collection
	Dim AllExtName  '下载类型限制
	Dim MaxFileSize '下载类型限制
	Dim DownTimeout '超时设置
	'===============================================
	'启动类事件
	'===============================================
	Private Sub Class_Initialize()
		On Error Resume Next
		DownTimeout = 64 '超时设置
		MaxFileSize = 0'-- 下载大小限制
		AllExtName = "rm|swf"'-- 下载类型限制
	End Sub
	'===============================================
	'关闭类事件
	'===============================================
	Private Sub Class_Terminate()
		'-- Class_Terminate
	End Sub
	'===============================================
	'-- 超时设置
	'===============================================
	Public Property Let CjTimeout(ByVal NewValue)
		DownTimeout = NewValue
	End Property
	'===============================================
	'-- 下载类型限制
	'===============================================
	Public Property Let DownExtName(ByVal NewValue)
		AllExtName = NewValue
	End Property
	'===============================================
	'-- 下载大小限制
	'===============================================
	Public Property Let MaxSize(ByVal NewValue)
		MaxFileSize = NewValue * 1024
	End Property
	'===============================================
	'函数名:G()
	'作  用:'取得Request.Querystring 或 Request.Form 的值
	'===============================================
	Public Function G(Str)
		G = Replace(Replace(Request(Str), "'", ""), """", "")
	End Function
	'===============================================
	'函数名:GetItemConfig
	'作  用:获取采集基础配置信息
	'参  数:ConfigField相应的字段名称,CJID基础配置的ID号
	'===============================================
	Public Function GetItemConfig(ByVal ConfigField,CJID)
		'IF Application(CJID & "ItemConfig_" & ConfigField)="" Then
			Dim ConfigRS:Set ConfigRS = Server.CreateObject("Adodb.Recordset")
			On Error Resume Next
			ConfigRS.Open ("Select * From ModuleInfo where ID="& CJID), Conn_C, 1, 1
			GetItemConfig = ConfigRS(ConfigField)
			If Err.Number <> 0 Then GetItemConfig = "":Err.clear
			ConfigRS.Close:Set ConfigRS = Nothing
		'else
		'	GetConfig=Application(CJID & "ItemConfig_" & ConfigField)
		'end if
	End Function
	'===============================================
	'函数名:GetHttpPage
	'作  用:获取网页源码
	'参  数:HttpUrl ------网页地址,Cset 编码
	'===============================================
	Function GetHttpPage(ByVal URL, ByVal Cset)
	Dim BlockStartTime
	On Error Resume Next
	Dim Http
	If IsNull(URL)=True Or Len(URL)<18 Or URL="$False$" Then
		GetHttpPage="$False$"
		Exit Function
	End If
	BlockStartTime = Timer()
	Set Http=server.createobject("MSXML2.XMLHTTP")
	Http.open "GET",URL,False
	Http.Send()
	'循环等待数据接收
	Dim temp,BlockTimeout 	
	BlockTimeout = 64
	While (http.ReadyState <> 4)
		' 判断是否块超时
		temp = Timer() - BlockStartTime
		Response.Write(Timer())
		If (temp > BlockTimeout) Then
			http.abort
			Set Http=Nothing 
			GetHttpPage="$False$"
			Exit function
			Response.End
		End If
		http.waitForResponse 10000'等待1000毫秒
	Wend
	If Http.Readystate<>4 then
		Set Http=Nothing 
		GetHttpPage="$False$"
		Exit function
	End if
	GetHTTPPage=bytesToBSTR(Http.responseBody,Cset)
	Set Http=Nothing
	
	If Err.number<>0 then
		If IsNull(URL)=True Or Len(URL)<18 Or URL="$False$" Then
		GetHttpPage="$False$"
		Exit Function
	End If
	Set Http=Nothing
		Err.Clear
	End If
	
	End Function
	'===============================================
	'函数名:BytesToBstr
	'作  用:将获取的源码转换为中文
	'参  数:Body ------要转换的变量
	'参  数:Cset ------要转换的类型
	'===============================================
	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

	'==================================================
	'函数名:PostHttpPage
	'作  用:登录
	'==================================================
	Function PostHttpPage(RefererUrl,PostUrl,PostData,Cset) 
		Dim xmlHttp 
		Dim RetStr
		On Error Resume Next
		Set xmlHttp = CreateObject("Msxml2.XMLHTTP")  
		xmlHttp.Open "POST", PostUrl, False
		XmlHTTP.setRequestHeader "Content-Length",Len(PostData) 
		xmlHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
		xmlHttp.setRequestHeader "Referer", RefererUrl
		xmlHttp.Send PostData 
		If Err.Number <> 0 Then
			Set xmlHttp=Nothing
			PostHttpPage = "$False$"
			Exit Function
		End If
		PostHttpPage=bytesToBSTR(xmlHttp.responseBody,Cset)
		Set xmlHttp = Nothing
	End Function 

	'===============================================
	'函数名:UrlEncoding
	'作  用:转换编码
	'===============================================
	Function UrlEncoding(DataStr)
		Dim StrReturn,Si,ThisChr,InnerCode,Hight8,Low8
		StrReturn = ""
		For Si = 1 To Len(DataStr)
			ThisChr = Mid(DataStr,Si,1)
			If Abs(Asc(ThisChr)) < &HFF Then
				StrReturn = StrReturn & ThisChr
			Else
				InnerCode = Asc(ThisChr)
				If InnerCode < 0 Then
				InnerCode = InnerCode + &H10000
				End If
				Hight8 = (InnerCode  And &HFF00)\ &HFF
				Low8 = InnerCode And &HFF
				StrReturn = StrReturn & "%" & Hex(Hight8) &  "%" & Hex(Low8)
			End If
		Next
		UrlEncoding = StrReturn
	End Function
	'===============================================
	'函数名:GetBody
	'作  用:截取固定的字符串
	'参  数:strHTML   ----原字符串
	'参  数: start ------ 开始字符串
	'参  数: Over ------ 结束字符串
	'参  数:IncluL ------是否包含StartStr
	'参  数:IncluR ------是否包含OverStr
	'===============================================
	Public Function GetBody(ByVal strHTML, ByVal Start, ByVal Over,IncluL,IncluR)
		Dim SS
		Dim Match
		Dim TempStr
		Dim strPattern
		Dim s,o  
		If IsNull(Start)=True Then GetBody="$False$" : Exit Function
		Start=ReplaceTrim(Start) : Over=ReplaceTrim(Over) : strHTML=strHTML
		s=Len(start) : o=Len(Over)

		If s = 0 Or o = 0  Then GetBody="$False$" : Exit Function
		strPattern = "(" & CorrectPattern(start) & ")(.+?)(" & CorrectPattern(Over) & ")"
		On Error Resume Next
		Dim re
		Set re = New RegExp
		re.IgnoreCase = False
		re.Global = False
		re.Pattern = strPattern
		Set SS = re.Execute(strHTML)
		For Each Match In SS
			TempStr = Match.Value
		Next
		If TempStr="" Then'空字符串,结束函数名
			GetBody="$False$"
			Exit Function
		End If

		If IncluL=False then
			TempStr=Right(TempStr,Len(TempStr) -S)
		End if
		If IncluR=False then
			TempStr=Left(TempStr,Len(TempStr) - O)
		End if	
		If Err.number<>0 then	'出错,结束函数名
			GetBody="$False$"
			Exit Function
		End If
		Set SS = Nothing
		Set re = Nothing
		GetBody = TempStr
		Exit Function
	End Function
	'===============================================
	'函数名:GetArray
	'作  用:提取链接地址,以$Array$分隔
	'参  数:ConStr ------提取地址的原字符
	'参  数:StartStr ------开始字符串
	'参  数:OverStr ------结束字符串
	'参  数:IncluL ------是否包含StartStr
	'参  数:IncluR ------是否包含OverStr
	'===============================================
	Function GetArray(Byval ConStr,StartStr,OverStr,IncluL,IncluR)
	Dim TempStr,TempStr2,objRegExp,Matches,Match,Templisturl,TempStr_i
	Dim s,o 
	On Error Resume Next
	If ConStr="$False$" or ConStr="" Or IsNull(ConStr)=True or StartStr="" Or OverStr="" or  IsNull(StartStr)=True Or IsNull(OverStr)=True Then
		GetArray="$False$"
		Exit Function
	End If
	StartStr=ReplaceTrim(StartStr) : OverStr=ReplaceTrim(OverStr) : ConStr=ConStr
	s=Len(StartStr) : o=Len(OverStr)
	TempStr=""
	Set objRegExp = New Regexp 
	objRegExp.IgnoreCase = True 
	objRegExp.Global = True
	objRegExp.Pattern = "("&CorrectPattern(StartStr)&").+?("&CorrectPattern(OverStr)&")"
	Set Matches =objRegExp.Execute(ConStr) 
	For Each Match in Matches
		'If Templisturl =Match.Value then
		'Else
				TempStr_i=Match.Value
				If IncluL=False then
					TempStr_i=Right(TempStr_i,Len(TempStr_i) -S)
				End if
				If IncluR=False then
					TempStr_i=Left(TempStr_i,Len(TempStr_i) - O)
				End if	
				TempStr=TempStr & "$Array$" & TempStr_i
		'		Templisturl = Match.Value
		'End if
	Next 
	Set Matches=nothing
	
	If TempStr="" Then
		GetArray="$False$"
		Exit Function
	End If
	TempStr=Right(TempStr,Len(TempStr)-7)
	Set objRegExp=nothing
	Set Matches=nothing

	If TempStr="" then
		GetArray="$False$"
	Else
		GetArray=TempStr
	End if
	End Function
	'===============================================
	'函数名:ReplaceSaveRemoteFile
	'作  用:替换、保存远程图片
	'参  数:ConStr ------ 要替换的字符串
	'参  数:SaveTf ------ 是否保存文件,False不保存,True保存
	'参  数: TistUrl------ 当前网页地址
	'===============================================
	Function ReplaceSaveRemoteFile(ConStr,strInstallDir,ChannelDir,SaveTf,TistUrl,ModuleID)
	If ConStr="$False$" or ConStr="" or ChannelDir="" Then
		ReplaceSaveRemoteFile=ConStr
		Exit Function
	End If
	Dim TempStr,TempStr2,TempStr3,Re,Matches,Match,Tempi,TempArray,TempArray2
	
	Set Re = New Regexp 
	Re.IgnoreCase = True 
	Re.Global = True
	Re.Pattern ="<img.+?[^\>]>"
	Set Matches =Re.Execute(ConStr) 
	For Each Match in Matches
		If TempStr<>"" then 
			TempStr=TempStr & "$Array$" & Match.Value
		Else
			TempStr=Match.Value
		End if
	Next
	If TempStr<>"" Then
		TempArray=Split(TempStr,"$Array$")
		TempStr=""
		For Tempi=0 To Ubound(TempArray)
			Re.Pattern ="src\s*=\s*.+?\.(gif|jpg|bmp|jpeg|psd|png|svg|dxf|wmf|tiff)"
			Set Matches =Re.Execute(TempArray(Tempi)) 
			For Each Match in Matches
				If TempStr<>"" then 
					TempStr=TempStr & "$Array$" & Match.Value
				Else
					TempStr=Match.Value
				End if
			Next
		Next
	End if
	If TempStr<>"" Then
		IncludePic=1'图片新闻
		Re.Pattern ="src\s*=\s*"
		TempStr=Re.Replace(TempStr,"")
	End If
	Set Matches=nothing
	Set Re=nothing
	If TempStr="" or IsNull(TempStr)=True Then

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -