高山流水
山高水长,流云萦绕
posts - 0,  comments - 0,  trackbacks - 0

在 VC 中用 WinInet 的 CInternetSession::OpenURL(url),得到一个 CFile,读取其中的内容即可,详细代码如下

  1. #include <stdio.h>   
  2. #include <afxinet.h>   
  3.     
  4. int main(int argc, char* argv[])   
  5. {   
  6.     CInternetSession session("HttpClient");   
  7.     char * url = " http://www.imobile.com.cn/simcard.php?simcard=1392658";   
  8.     CHttpFile* pfile = (CHttpFile *)session.OpenURL(url);   
  9.        
  10.     DWORD dwStatusCode;   
  11.     pfile -> QueryInfoStatusCode(dwStatusCode);   
  12.     if(dwStatusCode == HTTP_STATUS_OK)   
  13.     {   
  14.         CString content;   
  15.         CString data;   
  16.         while (pfile -> ReadString(data))   
  17.         {   
  18.             content  += data + "\r\n";   
  19.         }   
  20.         content.TrimRight();   
  21.         printf(" %s\n " ,(LPCTSTR)content);   
  22.     }    
  23.     pfile -> Close();   
  24.     delete pfile;   
  25.     session.Close();   
  26.        
  27.     return   0 ;   
  28. }  

其他如不从缓存中读取内容及如何使用代理连接现在就不说了,可以参考下面的链接,或者下次补上。另外不妨看看 Java 是如何读取 URL 内容的,更简单
  1. GetMethod httpMethod = new GetMethod("http://unmi.blogcn.com");   
  2. int statusCode = new HttpClient().executeMethod(httpMethod);   
  3. if(statusCode == HttpStatus.SC_OK)   
  4. {   
  5.     System.out.println(httpMethod.getResponseBodyAsString());   
  6. }   
  7. httpMethod.releaseConnection();  

内容取过来之后,总是希望从中拣出需要的数据,可惜 VC6 中没有自己的正则表达式库,所以下一步要学用 boost 的正则表达式库。

参考链接:1. VC++6.0 通过HTTP方式获取网页
         2. CInternetSession获取网页内容的问题
         3. 利用CInternetSession从网站获取信息,并利用CString拆分查找特定信息
posted on 2008-12-22 11:12 高山流水 阅读(534) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航:   博客园   博客园最新博文   博问   管理



<2026年6月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用链接

留言簿

文章档案

搜索

  •  

最新评论