OpenURL(Get Web)

本教程通过C++示例代码展示了如何从雅虎财经网站抓取特定股票代码的数据。使用Winsock及Wininet库进行网络请求,构造目标URL并读取网页内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
// SS.cpp : 定義主控台應用程式的進入點。
//

#include 
"stdafx.h"

#include 
<stdio.h>
#include 
<WINSOCK2.H>
#include 
<Windows.h>

#include 
"winsock.h"   
#include 
"wininet.h"   
#pragma comment(lib,"wsock32.lib")
#pragma comment(lib,"wininet.lib")

#define URL_PRE "http://cn.finance.yahoo.com/q/o?s="
#define BUF_MAX (1024 * 128)

static TCHAR szBuffer[BUF_MAX] = {0};

int _tmain(int argc, _TCHAR* argv[])
{
    
    
//目標URL
    TCHAR szTargetURL[256= {0};
    
    
//股票代碼
    UINT StockCode = 600036;
    
    
//股票代碼(字符串)
    TCHAR szStockCode[7= {0};

    
/*strcpy*/wcscpy(szTargetURL, LPCWSTR(URL_PRE));
    
/*sprintf*/swprintf(szStockCode, L"%d", StockCode);

    
//合成
    /*szTargetURL = *//*strcat*/wcscat(szTargetURL, szStockCode);
    
/*szTargetURL = *//*strcat*/wcscat(szTargetURL, L".SS");
    wprintf(L
"szTargetURL=%s ", szTargetURL);

    
//網路取時
    HINTERNET hNet = ::InternetOpen(L"MSDN SurfBear",
                                PRE_CONFIG_INTERNET_ACCESS,
                                NULL,
                                INTERNET_INVALID_PORT_NUMBER,
                                
0) ;

    HINTERNET hUrlFile 
= ::InternetOpenUrl(hNet,
                                
/*szTargetURL*/L"http://cn.finance.yahoo.com/q/o?s=600036.SS",
                                NULL,
                                
0,
                                INTERNET_FLAG_RELOAD,
                                
0);


    DWORD dwBytesRead 
= 0;
    BOOL bRead 
= ::InternetReadFile(hUrlFile,
                                szBuffer,
                                
sizeof(szBuffer),
                                
&dwBytesRead);


    wprintf(L
"Done! ");
    ::InternetCloseHandle(hUrlFile);
    ::InternetCloseHandle(hNet);
    
    wprintf(L
"%s ", szBuffer);
    
return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值