一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

asp图片采集代码

时间:2008-02-25 编辑:简简单单 来源:一聚教程网

称来判断图片是否存在,

判断远程图片是否存在,原理是利用XMLHTTP.status来判断
function CheckURL(byval A_strUrl)
set XMLHTTP = Server.CreateObject("Microsoft.XMLHTTP")
XMLHTTP.open "HEAD",A_strUrl,false
XMLHTTP.send()
CheckURL=(XMLHTTP.status=200)
set XMLHTTP = nothing
end function
Dim imgurl
imgurl="UploadFiles/2007829144940734.gif"
if CheckURL(imgurl) then
response.write "图片存在"
else
response.write "图片不存在"
end if

判断远程图片是否存在[js代码]

{
var oReq = new ActiveXObject("Microsoft.XMLHTTP")
oReq.open("Get","UploadFiles/2007829144941621.gif",false);
oReq.send();
//alert(oReq.status)
if(oReq.status==404)
alert('不存在');
else
alert("存在")
}

下面是看保存代码.

在做采集程序的时候,需要将被采集网页上的图片保存下来,这样,首先要得到被采集网页上的图片地址,然后将图片保存下来
  
函数如下:
以下是引用片段:
Function ShowPic(str)  
  Set objRegExp = New Regexp'设置配置对象   
  objRegExp.IgnoreCase = True'忽略大小写   
  objRegExp.Global = True'设置为全文搜索   
  objRegExp.Pattern = ""  
  '为了确保能准确地取出图片地址所以分为两层配置:首先找到里面的标签,
然后再取出里面的图片地址后面的getimgs函数就是实现后一个功能的。   
strs=trim(str)   
Set Matches =objRegExp.Execute(strs)'开始执行配置   
For Each Match in Matches   
RetStr = RetStr &getimgs( Match.Value )'执行第二轮的匹配   
Next   
ShowPic = RetStr  
End Function  
Function getimgs(str)   
getimgs=""   
Set objRegExp1 = New Regexp   
objRegExp1.IgnoreCase = True   
objRegExp1.Global = True   
objRegExp1.Pattern = "http://.+?"""'取出里面的地址   
set mm=objRegExp1.Execute(str)   
For Each Match1 in mm   
getimgs=getimgs&left(Match1.Value,len(Match1.Value)-1)&"||"
 '把里面的地址串起来备用   
next   
End Function   
'取得图片内容  
function getHTTPPage(url)   
on error resume next   
dim http   
set http=server.createobject("MSXML2.XMLHTTP")
 '使用xmlhttp的方法来获得图片的内容   
Http.open "GET",url,false   
Http.send()   
if Http.readystate<>4 then   
exit function   
end if   
getHTTPPage=Http.responseBody   
set http=nothing   
if err.number<>0 then err.Clear   
end function   
'保存图片  
function saveimage(from,tofile)   
dim geturl,objStream,imgs   
geturl=trim(from)   
imgs=gethttppage(geturl)'取得图片的具休内容的过程   
Set objStream = Server.CreateObject("ADODB.Stream")
'建立ADODB.Stream对象,必须要ADO 2.5以上版本   
objStream.Type =1'以二进制模式打开   
objStream.Open   
objstream.write imgs'将字符串内容写入缓冲   
objstream.SaveToFile server.mappath(tofile),2'-将缓冲的内容写入文件   
objstream.Close()'关闭对象   
set objstream=nothing   
end function   
'调用实例  
Dim strpic,i,fname  
strpic = ShowPic("

" class="js-smartPhoto-pc" target="_blank">
")  
strpic = Split(strpic,"||")  
If UBound(strpic) > 0 Then   
For i = 0 To UBound(strpic) - 1  
'保存图片  
fname=cstr(i&mid(strpic(i),instrrev(strpic(i),".")))   
saveimage(strpic(i),fname)  
Next  
Else  
End If  

热门栏目