通过代理服务器下载网页
来源:互联网 发布:大智慧贵金属软件 编辑:程序博客网 时间:2024/05/18 09:18
#include <afxinet.h>
#pragma comment(lib, "Wininet.lib")
//-----------------------------------------------------------------------------
// 网页下载
//IN : strDownText 下载后网页的源码文本,strUrl 网页的链接地址
//OUT :
//RETURN: 成功返回TRUE,失败返回FALSE
//AUTHOR: 2005-8-8 Created by yangdz
//NOTE :
//-----------------------------------------------------------------------------
BOOL DownHttp(CString& strDownText, const char* url)
{
char strProxyList[MAX_PATH], strUsername[64], strPassword[64];
//in this case "proxya" is the proxy server name, "8080" is its port
strcpy(strProxyList, "203.55.231.107:8080"); //代理服务器地址
strcpy(strUsername, ""); //用户名
strcpy(strPassword, ""); //密码
DWORD dwServiceType = AFX_INET_SERVICE_HTTP;
CString szServer, szObject;
INTERNET_PORT nPort;
AfxParseURL(url, dwServiceType, szServer, szObject, nPort);
CInternetSession mysession;
CHttpConnection* pConnection;
CHttpFile* pHttpFile;
pConnection = mysession.GetHttpConnection(szServer,
INTERNET_FLAG_KEEP_CONNECTION,
INTERNET_INVALID_PORT_NUMBER,
NULL, NULL);
pHttpFile = pConnection->OpenRequest("GET", szObject,
NULL, 0, NULL, NULL,
INTERNET_FLAG_KEEP_CONNECTION);
//here for proxy
INTERNET_PROXY_INFO proxyinfo;
proxyinfo.dwAccessType = INTERNET_OPEN_TYPE_PROXY;
proxyinfo.lpszProxy = strProxyList;
proxyinfo.lpszProxyBypass = NULL;
mysession.SetOption(INTERNET_OPTION_PROXY, (LPVOID)&proxyinfo, sizeof(INTERNET_PROXY_INFO));
pHttpFile->SetOption(INTERNET_OPTION_PROXY_USERNAME, strUsername, strlen(strUsername)+1);
pHttpFile->SetOption(INTERNET_OPTION_PROXY_PASSWORD, strPassword, strlen(strPassword)+1);
pHttpFile->SendRequest(NULL);
DWORD nFileSize = pHttpFile->GetLength();
LPSTR rbuf = strDownText.GetBuffer(nFileSize);
UINT uBytesRead = pHttpFile->Read(rbuf, nFileSize);
strDownText.ReleaseBuffer();
pHttpFile->Close();
delete pHttpFile;
pConnection->Close();
delete pConnection;
mysession.Close();
return TRUE;
}
- 通过代理服务器下载网页
- 通过代理服务器下载网页
- NET中,WebClient通过代理服务器访问网页
- 通过网页下载ipa
- 通过代理服务器验证后在抓取网页内容
- C#用HttpWebRequest通过代理服务器验证后抓取网页内容
- C#用HttpWebRequest通过代理服务器验证后抓取网页内容
- 如何通过网络代理服务器下载谷歌卫星地图
- Unity3d 通过网页下载资源
- 使网页无法通过IE另存为下载
- 使网页无法通过IE另存为下载
- 通过代理服务器连接
- Java通过代理服务器上网
- 代理服务器shadowsocks下载
- SVN通过代理服务器download代码
- 通过代理服务器 访问 Internet页面。
- 通过代理服务器访问SFTP问题解决
- 使用applet通过网页从服务器端下载文件
- JS的正则表达式
- 《C#高级编程》第9章:集合,VectorAsCollection.cs
- 学好VC++的十大良好习惯
- 学习c++的50条忠告(初学者必看)
- 一些有用的网址
- 通过代理服务器下载网页
- 《C#高级编程》第9章:集合,ArrayList,Stack,Queue,SortedList
- 学习appfuse
- ASP.NET(C#)中使数据库中读取的文本换原格式显示的函数
- Java中的IO的性能优化 [摘]
- 使用strtotime作日期比较
- win2003改远程登陆端口号(修改3389默认端口)
- 如何学习vc++(vc的用处)
- 一百个最有用的网站地址