zoukankan      html  css  js  c++  java
  • C++ 获取网页源码码的操作

    #include <stdio.h>
    #include <windows.h>
    #include <wininet.h>
    #pragma comment(lib,"Wininet.lib")
    #include <vector>
    using namespace std;
    int _tmain(int argc, _TCHAR* argv[])
    {
    vector<TCHAR> v;
    TCHAR szUrl[] = _T("http://www.95server.com/");
    TCHAR szAgent[] = _T("");
    HINTERNET hInternet1 =
    InternetOpen(NULL,INTERNET_OPEN_TYPE_PRECONFIG,NULL,NULL,NULL);
    if (NULL == hInternet1)
    {
    InternetCloseHandle(hInternet1);
    printf("%s ","NULL == hInternet1");
    return FALSE;
    }
    HINTERNET hInternet2 =
    InternetOpenUrl(hInternet1,szUrl,NULL,NULL,INTERNET_FLAG_NO_CACHE_WRITE,NULL);
    if (NULL == hInternet2)
    {
    InternetCloseHandle(hInternet2);
    InternetCloseHandle(hInternet1);
    printf("%s ","NULL == hInternet2");
    return FALSE;
    }
    DWORD dwMaxDataLength = 500;
    PBYTE pBuf = (PBYTE)malloc(dwMaxDataLength*sizeof(TCHAR));
    if (NULL == pBuf)
    {
    InternetCloseHandle(hInternet2);
    InternetCloseHandle(hInternet1);
    printf("%s ","NULL == pBuf");
    return FALSE;
    }
    DWORD dwReadDataLength = NULL;
    BOOL bRet = TRUE;
    do
    {
    ZeroMemory(pBuf,dwMaxDataLength*sizeof(TCHAR));
    bRet = InternetReadFile(hInternet2,pBuf,dwMaxDataLength,&dwReadDataLength);
    for (DWORD dw = 0;dw < dwReadDataLength;dw++)
    {
    v.push_back(pBuf[dw]);
    }
    } while (NULL != dwReadDataLength);
    vector<TCHAR>::iterator i;
    for(i=v.begin(); i!=v.end(); i++)
    printf("%c",*i);
    return 0;
    }

  • 相关阅读:
    jquery事件优化---事件委托
    2017年7月6号,总结所遇到的问题
    js日期函数
    跨域请求所遇到的错误
    ajax设置Access-Control-Allow-Origin实现跨域访问
    php提前输出响应及注意问题
    php中的日期和时间
    跨域请求json数据
    C++ 与 Visual Studio 2019 和 WSL(四)——库组件
    fpic 和 fPIC
  • 原文地址:https://www.cnblogs.com/minggeqiuzhi/p/3900700.html
Copyright © 2011-2022 走看看