要用C++读取一个网页的数据,但是数据是从网站后台的数据库读取的,我用CHttpFile直接下载html文件后,里面是不包括我想要的数据的,我想应该是网页虽然加载完成了,但是数据还没加载完成。我要怎么才能得到那些数据?
我是小白,麻烦说的详细点!
成功后再散100分。
跪求!!!!

解决方案 »

  1.   

    没做过你描述的功能。
    但可以确定你这样是不能获取到数据的。因为你没有用浏览器解析js代码,如果数据是js脚本ajax读取的,你只是获取到js代码,但并没有浏览器执行这些代码,根本就不会有从后台读取数据的动作发生,你只是获取到一堆文本而已。还有你直接获取的文件,可能只是下载文件其实后台代码都没有执行,怎么会有数据呢?你这种做法我也不晓得怎么做,期待高手。不过让我做的话还是有办法想的:
    自己在iis上发布一个网站后台用于接收数据;写一个页面,js代码通过ajax从你说的网站里面获取数据,获得数据后再用ajax将数据发送到自己发布的网站后台,这样就完成了数据的读取,然后后台代码就可以将数据传递给你的C++模块。 
    过程感觉不算复杂,不知道有没有人有更方便的方法
      

  2.   

    需要客户端组件webbrower来获取js动态生成的内容,服务器端的webhttprequest对象之类不解析js的,和你通过浏览器右键查看代码显示的是什么就是什么
      

  3.   

    就是说,目标网站所有异步加载的内容,根本获取不到
    你需要做的是[我是拿.net做例的,c++没玩过,不知道相关的控件]
    1:做一个C/S的软件,内嵌webbrower[这个就好比是一个IE内核的微型浏览器]
    2:在webbrower中设置你要抓取内容的页面Uri
    3:在webbrower中等待页面加载完成,然后获取指定的元素内容,然后你自己再存储起来就是了