用ASP VBS xmlhttp adodbstream下载和保存图片的代码

函数:

代码如下:

function saveFile(data,recfilen) 
    set Astream=CreateObject("Adodb.Stream")'asp Server.CreateObject("Adodb.Stream") 
    fxt=mid(recfilen,InStrRev(recfilen,".")+1) 
    txt=false 
    if fxt="asp" or fxt="xml" or fxt="aspx" or fxt="php" or fxt="txt" or fxt="jsp" then 
        txt=true 
    end if 
    if txt then 
        Astream.type=2  '1 bin,2 txt 
    else 
        Astream.type=1  '1 bin,2 txt 
    end if 
    Astream.Mode = 3'     adModeRead =1  
                    '  adModeReadWrite =3  
                    '  adModeRecursive =4194304  
                    '  adModeShareDenyNone =16  
                    '  adModeShareDenyRead =4  
                    '  adModeShareDenyWrite =8  
                    '  adModeShareExclusive =12  
                    '  adModeUnknown =0  
                    '  adModeWrite =2  
    Astream.open 
    'Astream.CharSet = "GB2312" 
    'Astream.LoadFromFile(recfilen) '装载文件 
    'Assp=Astream.size 
    Astream.Position =0 '装载文件时设置为Assp 
    'Astream.Writetext tmpstr00,1 
    if txt then 
        data=bytes2bstr(data) 
        Astream.Writetext data,1 
    else 
        Astream.Write data 
    end if

Astream.SaveToFile recfilen,2 
    Astream.close     
end function 
    'Server.

function downimg(url) 
    set oXMLHTTP =CreateObject("Microsoft.XMLHTTP")'asp Server.CreateObject("Microsoft.XMLHTTP") 
    data_got="" 
    oXMLHTTP.open "GET",url, false 
    oXMLHTTP.setRequestHeader "Accept-Encoding"," gzip, deflate"  
    oXMLHTTP.setRequestHeader "User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 2.0.50727)"  
    oXMLHTTP.send 
    rtstatus=oXMLHTTP.status 
    data_got=oXMLHTTP.responsebody 
    filename=mid(url,InStrRev(url,"/")+1)     
    if rtstatus=200 then 
        data_got=oXMLHTTP.responsebody 
        saveFile data_got,filename 
    else 
        data_got="" 
    end if 
    set oXMLHTTP =nothing 
end function 
function bytes2bstr(vin) '二进制转化为汉字 
    strreturn = ""  
    for i = 1 to lenb(vin)  
        thischarcode = ascb(midb(vin,i,1))  
        if thischarcode < &h80 then  
            strreturn = strreturn & chr(thischarcode)  
        else  
            nextcharcode = ascb(midb(vin,i+1,1))  
            strreturn = strreturn & chr(clng(thischarcode) * &h100 + cint(nextcharcode))  
            i = i + 1  
        end if  
    next  
    bytes2bstr = strreturn  
end function

使用方法:


代码如下:

imgurl="http://www.163car.com/UpFile/CarImages/0092/S_b_20051241127326f6uew1s.jpg" '图片 
downimg(imgurl) 
imgurl="HTTP://login.zydn.net/news.asp" '文字页面 
downimg(imgurl)

把代码保存为vbs文件,不需要iis就可以运行~

(0)

相关推荐

  • ASP实现强制图片下载函数

    图片不进行处理,图片默认是用浏览器打开显示,如果希望图片变为下载可以使用以下代码 function downloadFile(strFile) strFilename = server.MapPath(strFile) Response.Buffer = True Response.Clear Set s = Server.CreateObject("ADODB.Stream") s.Open s.Type = 1 on error resume next Set fso = Serv

  • Asp.Net二级域名共享Forms身份验证、下载站/图片站的授权访问控制

    一般大家对小文件的解决办法是直接在服务端读取文件,然后输出,这样就避免了文件地址的暴露,这是一种解决办法.而我现在想说的是使用 TransmitFile 方法直接输出文件,但是这个方法对大文件的支撑力度有多少,以及会带来多大的性能开销,我还没有测试过,有兴趣的朋友可以测试下,并发表评论. 好了,进入正题,一般对下载站,大家想到的就是流量的问题,所以自动就想到应该把文件与程序代码分开部署.所以我给文件单独做了一个二级域名,我们就叫 file.xxx.com 吧.主网站域名就是 www.xxx.co

  • 用ASP VBS xmlhttp adodbstream下载和保存图片的代码

    函数: 复制代码 代码如下: function saveFile(data,recfilen)      set Astream=CreateObject("Adodb.Stream")'asp Server.CreateObject("Adodb.Stream")      fxt=mid(recfilen,InStrRev(recfilen,".")+1)      txt=false      if fxt="asp" 

  • ASP vbs 代码大小写规范

    ASP vbs 代码大小写规范-我们 function aspvbs() { var ss=document.getElementById("aspvbs").value; var vbs0="函数关键字|Function|Sub|"; var vbs1="保留关键字|And|As|ByRef|Call|Case|Class|Const|Dim|Do|Each|Else|ElseIf|Empty|End|Eqv|Erase|Execute|ExecuteG

  • ASP.NET之Excel下载模板、导入、导出操作

    本文介绍了ASP.NET下Excel下载模板.导入.导出操作,供大家参考,具体内容如下 1.下载模板功能 protected void btnDownload_Click(object sender, EventArgs e) { var path = Server.MapPath(("upfiles\\") + "test.xlt"); //upfiles-文件夹 test.xlt-文件 var name = "test.xlt"; try {

  • Asp.net下载功能的解决方案代码

    1. 首先新建一个用于进行下载处理的page页,如download.aspx,里面什么东西也没有. 2. 添加一个DownloadHandler类,它继承于IHttpHandler接口,可以用来自定义HTTP 处理程序同步处理HTTP的请求. public class DownloadHandler : IHttpHandler { public void ProcessRequest(HttpContext context) { HttpResponse Response = context.

  • asp中xmlhttp组件发包

    asp中xmlhttp组件发包 写的一个小偷函数,注意红色代码部分,其他的自己添加吧! Function PostHttpPageFrom(HttpUrl,stra,FromUrl)    Dim Http Set Http=server.createobject("MSXML2.XMLHTTP")    Http.open "POST",HttpUrl,False    Http.setrequestheader "content-length"

  • asp.net C#实现下载文件的六种方法实例

    复制代码 代码如下: protected void Button1_Click(object sender, EventArgs e)  {  /*  微软为Response对象提供了一个新的方法TransmitFile来解决使用Response.BinaryWrite  下载超过400mb的文件时导致Aspnet_wp.exe进程回收而无法成功下载的问题.  代码如下:  */ Response.ContentType = "application/x-zip-compressed"

  • ASP强制刷新网页和判断文件地址实例代码

    强制刷新网页 <% '强制性刷新随机验证码 '让随机验证码每次按IE的后退按钮时,返回登录页面的随即码都自动刷新, Response.expires=-1 Response.AddHeader"pragma","no-cache" Response.AddHeader"cache-control","no-store" %> 判断文件地址是否有效 <% Response.Write("")

  • Python使用urlretrieve实现直接远程下载图片的示例代码

    在实现爬虫任务时,经常需要将一些图片下载到本地当中.那么在python中除了通过open()函数,以二进制写入方式来下载图片以外,还有什么其他方式吗?本文将使用urlretrieve实现直接远程下载图片. 下面我们再来看看 urllib 模块提供的 urlretrieve() 函数.urlretrieve() 方法直接将远程数据下载到本地. >>> help(urllib.urlretrieve) Help on function urlretrieve in module urllib

  • 用python下载百度文库的代码

    先去下载一个叫SWFToImage.dll的东西 再建立一个bat文件,并运行: 复制代码 代码如下: COPY SWFToImage.dll %windir%\system32 regsvr32 %windir%\system32\SWFToImage.dll 复制代码 代码如下: #用python下载百度文库的代码,需要的同志请修改,下面有提示 #http://www.cnblogs.com/dearplain/ #code by plain import urllib2 import wi

  • ASP.NET MVC4异步聊天室的示例代码

    本文介绍了ASP.NET MVC4异步聊天室的示例代码,分享给大家,具体如下: 类图: Domain层 IChatRoom.cs using System; using System.Collections.Generic; namespace MvcAsyncChat.Domain { public interface IChatRoom { void AddMessage(string message); void AddParticipant(string name); void GetM

随机推荐