【问题标题】:JSOUP: Parsing Javascript fields from an HTML document?JSOUP:从 HTML 文档中解析 Javascript 字段?
【发布时间】:2012-04-22 17:49:16
【问题描述】:

我对 JSOUP 还很陌生,我在使用 Element.select 解析标签或 id 值时没有遇到任何问题。我遇到的问题是如何筛选页面中的 javascript 代码。我在这里加载文档:

Document doc = Jsoup.connect(pageUrl)
                .userAgent(Agent)
                .timeout(5000)
                .get();

我试图提取的 javascript 字段值如下:

arrayGPSLocation["0"]    = "-19473982376,6848295867";
arrayGPSLocation["1"]    = "-19473982376,6848296245";

由于这些数组值不在标准代码标记中 是 JSOUP 执行此操作的适当方式吗?我喜欢 JSOUP 的 API。唯一的其他方法是将字符串例程组合在一起...... 即:

int start = pageBuffer.indexOf("arrayGPSLocation[\" + counter + \"]");
int end = pageBuffer.indexOf(";");
String result = pageBuffer.subString(start,end);

这个伪代码示例在解析大页面时会出现严重的性能问题。有谁知道如何使用 JSOUP 来完成这项工作,或者我应该自己编写刮板吗?

【问题讨论】:

    标签: javascript parsing jsoup


    【解决方案1】:

    您可以使用 Jsoup 做的所有事情 - 选择包含 javascript 代码的元素,将其值作为字符串获取并使用此字符串。就像你在示例中所做的那样。

    【讨论】:

    • 是的,看起来你是对的。我遇到了来自 Mozilla 的 Rhino 来进行 javascript 解析,但我认为在获取 javascript 部分后自己编写会更有效率。
    猜你喜欢
    • 2013-07-13
    • 2017-03-02
    • 2016-05-27
    • 2011-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-18
    • 2020-04-26
    相关资源
    最近更新 更多