【问题标题】:Pull data from web managment interface从网页管理界面拉取数据
【发布时间】:2013-03-11 13:04:10
【问题描述】:

我希望从 UPS 的 Web 管理界面中提取一个状态字段,以便可以在我正在编写的另一个 Web 应用程序中使用数据。我想知道是否有人会知道解决此问题的方法,因为我似乎无法通过网络搜索找到我正在寻找的信息。 Id 还需要它的值来刷新或重新检查。下面的 UPS Web 界面示例首先查看在线字段:

【问题讨论】:

    标签: php javascript web-applications


    【解决方案1】:

    这是一个非常基本的例子,我没有测试过(没有安装php)。

    您需要查看控制面板的来源,并了解如何识别包含所需信息的元素。

    下面的代码(希望)搜索具有 id server-status 的元素,如果该元素存在,则检查其 class 属性以确定服务器的状态。

    您不必使用dom 的东西,您也可以使用正则表达式或其他方法。只要你能准确找到你需要的信息。

    您可能还需要使用 cURL 或比 file_get_contents() 更高级的东西,因为您可能需要登录凭据才能查看相关页面。

    <?php
    
        $html = file_get_contents("http://path.to/your/control.panel");
        // you may need to use cURL or something more advanced if you need to provide login credentials
    
        $dom = new DOMDocument;
    
        $dom->loadHTML($html);
    
        $test = $dom->getElementById('server-status');
    
        if ($test == NULL) {
            // unable to find element, somethings up!
        } else {
            if ($test->getAttribute('class') == "online") {
                // status element has "online" class, server is online
            } else {
                // status element does not have "online" class, somethings up!
            }
        }
    
    ?>
    

    更新

    快速浏览了该管理软件的演示,它不会像我的示例那么简单,因为似乎没有任何有用的元素 idclass 名称。不过还是可以的。

    【讨论】:

    • 感谢这对我有很大帮助并给了我一个方向
    猜你喜欢
    • 1970-01-01
    • 2018-01-16
    • 2014-12-01
    • 1970-01-01
    • 2012-07-16
    • 1970-01-01
    • 2019-06-08
    • 2013-07-12
    • 1970-01-01
    相关资源
    最近更新 更多