asp

位置:IT落伍者 >> asp >> 浏览文章

ASP取出HTML里面的图片地址的函数


发布日期:2021年09月30日
 
ASP取出HTML里面的图片地址的函数
以下是取出HTML里面的图片地址的函数

主要原理就是用正则判断 <img> 的<src>属性这在采集程序中将非常有用

函数如下

以下是引用片段

Function ShowPic(str)

Set objRegExp = New Regexp设置配置对象

objRegExpIgnoreCase = True忽略大小写

objRegExpGlobal = True设置为全文搜索

objRegExpPattern = <img+?>

为了确保能准确地取出图片地址所以分为两层配置首先找到里面的<img>标签然后再取出里面的图片地址后面的getimgs函数就是实现后一个功能的

strs=trim(str)

Set Matches =objRegExpExecute(strs)开始执行配置

For Each Match in Matches

RetStr = RetStr &getimgs( MatchValue )执行第二轮的匹配

Next

ShowPic = RetStr

End Function

Function getimgs(str)

getimgs=

Set objRegExp = New Regexp

objRegExpIgnoreCase = True

objRegExpGlobal = True

objRegExpPattern = +?取出里面的地址

set mm=objRegExpExecute(str)

For Each Match in mm

getimgs=getimgs&left(MatchValuelen(MatchValue))&||把里面的地址串起来备用

next

End Function

取得图片内容

function getHTTPPage(url)

on error resume next

dim http

set (MSXMLXMLHTTP)使用xmlhttp的方法来获得图片的内容

Httpopen GETurlfalse

Httpsend()

if Httpreadystate<> then

exit function

end if

getHTTPPage=HttpresponseBody

set http=nothing

if errnumber<> then errClear

end function

保存图片

function saveimage(fromtofile)

dim geturlobjStreamimgs

geturl=trim(from)

imgs=gethttppage(geturl)取得图片的具休内容的过程

Set objStream = ServerCreateObject(ADODBStream)建立ADODBStream对象必须要ADO 以上版本

objStreamType =以二进制模式打开

objStreamOpen

objstreamwrite imgs将字符串内容写入缓沖

objstreamSaveToFile servermappath(tofile)将缓沖的内容写入文件

objstreamClose()关闭对象

set objstream=nothing

end function

调用实例

Dim strpicifname

strpic = ShowPic(<DIV align=center><IMG src=_//gif border=></DIV>)

strpic = Split(strpic||)

If UBound(strpic) > Then

For i = To UBound(strpic)

保存图片

fname=cstr(i&mid(strpic(i)instrrev(strpic(i))))

saveimage(strpic(i)fname)

Next

Else

End If

上一篇:用ASP编写网站流量统计系统

下一篇:初学者必读ASP运行环境的搭建