海贼王黄金城没有日语:VC中使用CInternetSession抓取网页内容
来源:百度文库 编辑:偶看新闻 时间:2024/04/30 15:04:51
VC中使用CInternetSession抓取网页内容
2008-12-09 16:33:54 阅读(660) 发表评论在 VC 中用 WinInet 的 CInternetSession::OpenURL(url),得到一个 CFile,读取其中的内容即可,详细代码如下
#include
#include
int
main(
int
argc,
char
* argv[])
{
CInternetSession session(
"HttpClient"
);
char
* url =
" http://www.imobile.com.cn/simcard.php?simcard=1392658"
;
CHttpFile* pfile = (CHttpFile *)session.OpenURL(url);
DWORD
dwStatusCode;
pfile -> QueryInfoStatusCode(dwStatusCode);
if
(dwStatusCode == HTTP_STATUS_OK)
{
CString content;
CString data;
while
(pfile -> ReadString(data))
{
content += data +
"rn"
;
}
content.TrimRight();
printf
(
" %sn "
,(
LPCTSTR
)content);
}
pfile -> Close();
delete
pfile;
session.Close();
return
0 ;
}
#include
#include
int
main(
int
argc,
char
* argv[])
{
CInternetSession session(
"HttpClient"
);
char
* url =
" http://www.imobile.com.cn/simcard.php?simcard=1392658"
;
CHttpFile* pfile = (CHttpFile *)session.OpenURL(url);
DWORD
dwStatusCode;
pfile -> QueryInfoStatusCode(dwStatusCode);
if
(dwStatusCode == HTTP_STATUS_OK)
{
CString content;
CString data;
while
(pfile -> ReadString(data))
{
content += data +
"rn"
;
}
content.TrimRight();
printf
(
" %sn "
,(
LPCTSTR
)content);
}
pfile -> Close();
delete
pfile;
session.Close();
return
0 ;
}
其他如不从缓存中读取内容及如何使用代理连接现在就不说了,可以参考下面的链接,或者下次补上。另外不妨看看 Java 是如何读取 URL 内容的,更简单
GetMethod httpMethod =
new
GetMethod(
"http://unmi.blogcn.com"
);
int
statusCode =
new
HttpClient().executeMethod(httpMethod);
if
(statusCode == HttpStatus.SC_OK)
{
System.out.println(httpMethod.getResponseBodyAsString());
}
httpMethod.releaseConnection();
GetMethod httpMethod =
new
GetMethod(
"http://unmi.blogcn.com"
);
int
statusCode =
new
HttpClient().executeMethod(httpMethod);
if
(statusCode == HttpStatus.SC_OK)
{
System.out.println(httpMethod.getResponseBodyAsString());
}
httpMethod.releaseConnection();
内容取过来之后,总是希望从中拣出需要的数据,可惜 VC6 中没有自己的正则表达式库,所以下一步要学用 boost 的正则表达式库。
VC++ 中如何使用fopen ?
vc中使用opengl问题
关于VC中使用boost
关于VC中库文件的使用????
在vc中使用vss的问题!!!!!!!!!!
VC++ 2005 中怎样使用 DirectSound?
在vc中会使用xerces吗
vc中如何使用GBK编码
VC中如何使用Winsocket控件?
VC++6.0中对话框中数据如何传递使用??
在vc中使用strtofloat为什么系统说是未定义函数
我想在VC中使用TC的库函数,不知可不可以?
VC中使用DBGrid和Mecrosoft RemoteData控件的问题!
在VC中如何声名和使用API
vc编辑器中使用的哪种字体
VC++中在使用组合框时应注意些什么
vc中如何使用嵌入式sql(exec sql命令)?
vc中如何使用嵌入式sql语句(exec sql命令)?
VC++编程中复选框控件的使用
水晶报表能在VC++2005中使用吗?
VC.NET中如何使用TIMER组件来计时?
有关VC++中位图资源使用的初级问题
VC编程中,如何使用Radio单选按钮?
在vc中空格的使用有没规范?