javascript - 求指教怎么获取该网页动态数据

查看:59
本文介绍了javascript - 求指教怎么获取该网页动态数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

有什么办法可以获取到这部分数据:
网页链接:http://xxfb.hydroinfo.gov.cn/...
网页截图:

大概思路是使用如下方法获取class为sqjbstyle的td数目,再取出来表格td的内容
但这样打印出来的长度为0,不知道该怎么弄了,请大神指教下,感谢。
代码截图:

解决方案


$ch = curl_init();
        //设置超时
        curl_setopt($ch, CURLOPT_TIMEOUT, 30);
        curl_setopt($ch,CURLOPT_URL, 'http://xxfb.hydroinfo.gov.cn/dwr/call/plaincall/IndexDwr.getCJXX.dwr');

        //设置header
        curl_setopt($ch, CURLOPT_HEADER, FALSE);
        //要求结果为字符串且输出到屏幕上
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);


        curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
        //post提交方式
        curl_setopt($ch, CURLOPT_POST, TRUE);
        curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array(
            'callCount'=>1,
            'page'=>'/index.html',
            'httpSessionId'=>'2DD215E3F101D30EB5E23D0E3F19E238.tomcat1',
            //这个sessionid和下面的criptSessionId 暂时用的是我网页上的,估计你测试的时候会有问题
            'scriptSessionId'=>'013C85DE9865D5696402D23AB1620423617',
            'c0-scriptName'=>'IndexDwr',
            'c0-methodName'=>'getCJXX',
            'c0-id'=>0,
            'batchId'=>2,
        )));
        $matches=array();
        $data = curl_exec($ch);

        //从data里面解析,可以用正则,更好的是用xml,这里用着正则为例子,解析一个红色的部分,其他的你自己补充一下
        $html = preg_match('/_remoteHandleCallback\((.+)\);/',$data,$matches);
        $html = preg_match('/>([0-9.]+)<\/font>/',$matches[1],$matches);
        print_r($matches[1]);

这篇关于javascript - 求指教怎么获取该网页动态数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆