我有一个应用是用程序来获取网页上的全部文字,网页是由数据库动态生成的,我只想把文字保存到我的数据库中.就像是CATR+A全选之后再复制所有文字到剪贴板这个效果,然后我再分析获得的文字按字段存入我自己的数据库中.看论坛上的相类似的帖要求不一,我不懂HTML,所以想个完整点的代码学习一下.

解决方案 »

  1.   

    跟html无关
    创建一个socket请求这个动态网页就可以了
      

  2.   

    这样应该可以:
    先用IE控件载入这个网页
    然后:
    下面这段代码放在文档接收完成的 OnDocumentComplete 事件函数里
    LPDISPATCH lpDispatch;
    lpDispatch = m_webBrowser.get_Document();

    if (lpDispatch)
    {
    HRESULT hr = lpDispatch->QueryInterface(IID_IHTMLDocument3,
    (LPVOID*)&pHTMLDoc3);
    lpDispatch->Release();
    ASSERT(SUCCEEDED(hr));
    }

                            CString strHtmlText;
    IHTMLElement* pDocElem;
    hr = pHTMLDoc3->get_documentElement(&pDocElem);
    pHTMLDoc3->Release();
    ASSERT(SUCCEEDED(hr));
    pDocElem->get_innerText(strHtmlText);
    pDocElem->Release();
    这样得到的strHtmlText就是网页的文本。