zoukankan      html  css  js  c++  java
  • 获取网络图片缓存的地址

     

    uses WinINet;

    Function TForm1.GetCacheVerifyCodeFile(VerifyCodeURL:String; Var CacheVerifyCodeFile:String):Boolean;
    Var
    lpEntryInfo: PInternetCacheEntryInfo;
    dwEntrySize, dwLastError, Hwd: LongWORD;
    i, j: Integer;
    f: String;
    Begin
    Result := false;
    dwEntrySize := 0;
    j := 0;
    CacheVerifyCodeFile := '';
    FindFirstUrlCacheEntry(Nil, TInternetCacheEntryInfo(Nil^), dwEntrySize);
    GetMem(lpEntryInfo, dwEntrySize);
    Hwd := FindFirstUrlCacheEntry(Nil, lpEntryInfo^, dwEntrySize);
    If Hwd <> 0 Then
    Begin
        Repeat
          dwEntrySize := 0;
          FindNextUrlCacheEntry(Hwd, TInternetCacheEntryInfo(Nil^), dwEntrySize);
          dwLastError := GetLastError();
          If dwLastError = ERROR_INSUFFICIENT_BUFFER Then
          Begin
            GetMem(lpEntryInfo, dwEntrySize);
            If FindNextUrlCacheEntry(Hwd, lpEntryInfo^, dwEntrySize) Then
            begin
              If Pos(UpperCase(VerifyCodeURL), UpperCase(lpEntryInfo.lpszSourceUrlName)) > 0 Then
              Begin
                i := FileAge(lpEntryInfo.lpszLocalFileName);
                If i > j Then
                Begin
                  j := i;
                  f := lpEntryInfo.lpszLocalFileName;
                End
                Else
                  DeleteUrlCacheEntry(lpEntryInfo.lpszSourceUrlName);
              End;
            end;
          End;
          Application.ProcessMessages;
        Until (dwLastError = ERROR_NO_MORE_ITEMS);

        If FileExists(f) Then
        Begin
          CacheVerifyCodeFile := f;
          Result := true;
        End;
    End;
    FreeMem(lpEntryInfo);
    FindCloseUrlCache(Hwd);
    End;

    可用于在缓存中的验证码图片,或者防盗链的图片的采集,嘿嘿。

    此函数有两个参数,第一个是网络图片地址,第二个是本地缓存地址。第二个作为输出端口。

     

  • 相关阅读:
    python-logging配置
    python-装饰器
    python字符串操作
    python集合
    python-列表和元组
    Python 3开发网络爬虫(四): 登录
    python3中No module named 'commands'
    Python 爬虫 (三)
    零基础自学Python 3开发网络爬虫(二): 用到的数据结构简介以及爬虫Ver1.0 alpha
    零基础自学用Python 3开发网络爬虫(一)
  • 原文地址:https://www.cnblogs.com/toosuo/p/1815583.html
Copyright © 2011-2022 走看看