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

ASP 21NN 2年前 (2018-05-24) 0次浏览 已收录 0个评论 扫描二维码

以下是取出HTML里面的图片地址的函数:

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

函数如下:

以下是引用片段:
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.readystate4 then
exit function
end if
getHTTPPage=Http.responseBody
set http=nothing
if err.number0 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(“

“)
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


本文:ASP编程取出HTML里面的图片地址的函数 本文链接:https://www.21nn.cn/biancheng/asp/4041.html 本站所以图片、文章仅限用于学习和研究目的; 不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。 本站信息来自网络,版权争议与本站无关。 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。 如有侵权请邮件与我们联系处理。i@ki4.cn
喜欢 (0)
[1353713598@qq.com]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址