Webbrowser尝试解析一些使用ajax加载数据的页面

时间:2012-03-19 02:42:23

标签: c# javascript asp.net ajax browser

我正在尝试解析此网站上的一些图片.. 我在其他页面使用htmlagilitypack 但是这个页面使用ajax加载图像

所以这就是网页的运作方式。

  1. 有一个div标签,包含任何内容。
  2. 在div下方,他们在cdata thing中有一个脚本标记

    <script type="text/javscript> //<
    ![CDATA[ (function(){
    
    ajax POST request to a 'aaaaaa.js' file with the id parameter and if the request is success, it updates the blank div my changing the innerHTML value.
    })(); //]]> 
    </script>
    
  3. 所以......我试过的是......

    1. 使用webbrowser控件导航到该页面。 加载图像就好了但是当我试图得到'DocumentText'的值时 它只显示空白div标签......

    2. 尝试使用webrequest和webresponse从ajax POST获取直接数据。 但..可能导致其.js文件..它不起作用..我只得到http错误。

    3. 使用附加的参数向右浏览到js文件。 给我一个错误页面

    4. 浏览页面我试图解析然后导航到.js页面。 (我猜浏览器会在浏览原始页面时缓存某些内容..但我不知道它是什么。) 我得到了json的回应!我可以使用这些数据..但由于webbrowser控件正在使用IE。它只是问我是否要下载响应的js文件。

1 个答案:

答案 0 :(得分:0)

所以使用我在评论中提到的DOM的方法。

另一种方法可能是使用FiddlerCore(http://www.fiddler2.com/fiddler/Core/

或者自己做一个ajax电话。您必须确保尊重cookie,重定向和所有标题。