苏飞论坛

标题: Get方式成功获取了页面,但是页面上有段代码好像是js后来填充的,如何捕获啊? [打印本页]

作者: xjanlxj    时间: 2016-4-15 01:37
标题: Get方式成功获取了页面,但是页面上有段代码好像是js后来填充的,如何捕获啊?
首先,感谢飞哥开发的httphelper框架,感谢飞哥!真心感谢,这个框架帮我了大忙!

问题:

我用抓包软件已经抓到了目标页面地址和所有参数,也成功获取了页面内容,但是获取到的页面里没有我想要的东西,

<table id="finishedTable">
                                                        <thead>
                                                                <tr>
                                                                        <!-- qc7236 修改  begin-->
                                                                        <th id="col_SUBSCRIBE_ID">订单编号</th>
                                                                        <th id="col_TRADE_ID">订单流水号</th>
                                                                        <!-- qc7236 修改  end-->
                                                                        <th id="col_TRADE_TYPE">业务类型</th>
                                                                        <th id="col_SUBSCRIBE_STATE_NAME">订单状态</th>
                                                                </tr>
                                                        </thead>
                                                        <tbody>
                                                        </tbody>
                                                </table>


tbody里是空的,但是fiddler里捕获的数据里是有内容的,但是我前前后后的找了好多地址,好像没有其他地址去访问或调取这段数据了,请大家帮忙看看吧
<tbody>
                                                        </tbody>完成的这里是有tr,td的



我的代码:


public HttpResult GetHtml(string url, string cookie, string referer, string cerPath)
        {
            //创建Httphelper对象
            HttpHelper httpHelper = new HttpHelper();
            //创建HttpHelper参数设置类
            HttpItem httpItem = new HttpItem()
             {
                 URL = url, //URL     必需项  
                 Method = "GET", //URL     可选项 默认为Get  
                 Cookie = cookie,//字符串Cookie     可选项  
                 Referer = referer, //来源URL     可选项
                 Accept = "text/html, application/xhtml+xml, */*", //    可选项有默认值  
                 CerPath = cerPath, //证书绝对路径     可选项不需要证书时可以不写这个参数  
                 ResultType = ResultType.String, //返回数据类型,是Byte还是String
                 IsToLower = false, //得到的HTML代码是否转成小写     可选项默认转小写
                 Allowautoredirect = true, //是否根据301跳转     可选项  
                 AutoRedirectCookie = true, //是否自动处理Cookie     可选项
             };
            return httpHelper.GetHtml(httpItem);
        }




作者: songwenqi    时间: 2016-4-15 10:45
js填充一般也是通过Ajax获取的吧,可以尝试去捕获一般处理程序返回的数据吧。
作者: helloword    时间: 2016-4-15 12:52
模拟js的请求
作者: xjanlxj    时间: 2016-4-15 15:22
songwenqi 发表于 2016-4-15 10:45
js填充一般也是通过Ajax获取的吧,可以尝试去捕获一般处理程序返回的数据吧。

我也是感觉应该有个异步来请求数据,但是fiddler里没有发现异步发出的请求地址啊,你说的一般处理程序返回的数据是什么意思,具体怎么弄啊,需要在fiddler里怎么设置一下吗?小弟不才,望指点一二
作者: xjanlxj    时间: 2016-4-15 15:23
helloword 发表于 2016-4-15 12:52
模拟js的请求

小弟不才,不是很明白如何模拟您说的js请求啊?望指点一二
作者: songwenqi    时间: 2016-4-15 16:43
xjanlxj 发表于 2016-4-15 15:22
我也是感觉应该有个异步来请求数据,但是fiddler里没有发现异步发出的请求地址啊,你说的一般处理程序返 ...

如果是Ajax请求的处理程序,在请求里面是可以看到的,
作者: xjanlxj    时间: 2016-4-17 04:34
我已经找到了问题了,谢谢各位的提醒!确实在附近捕获的网址中发现了一些猫腻,原来是需要先访问一下另外一个地址,把数据先送上去,这个页面才有数据,不是js的问题,已经彻底解决了,谢谢!还是多多分析捕获的数据才是王道啊!结帖啦!




欢迎光临 苏飞论坛 (http://www.sufeinet.com/) Powered by Discuz! X3.4