0

嘿伙计们,我刚刚开始使用 Jsoup,并且在桌子上有一个小问题。我正在尝试从该网站 http://mywheels.ie/car-history-check/free-car-check-results/?VRN=00c31865解析汽车详细信息, 但不知道该怎么做。有人可以告诉我如何寻址表格并从中复制至少一个元素吗?提前致谢

Elements table = doc.select("table");
Elements row = doc.select("table[width=\"100%\"] [cellspacing=\"0px\"] [cellpadding=\"0px\"]");
Iterator<Element> iterator = row.listIterator();
while(iterator.hasNext())
{
        Element element = iterator.next();
        String id = element.attr("id");
        String classes = element.attr("class");
        String value = element.text();
        System.out.println("Id : " + id + ", classes : " + classes+ ", value : " + value);
}
4

1 回答 1

1

我可以建议您创建一个 JAVA 项目来测试 Jsoup,因为这样更快。我完全重组了你的代码。我使用描述性变量名称更容易理解。这是代码:

    Document doc;
    try {
        doc = Jsoup.connect("http://mywheels.ie/car-history-check/free-car-check-results/?VRN=00c31865").get();

        Element containingDiv = doc.select(".free-vehicle-report-topDiv").first();
        Elements table = containingDiv.select("table");
        Elements rows = table.select("tr");

        for (Element row : rows) {
            System.out.println("label: "+row.child(0).text()+", value:"+row.child(1).text());
            // LOG.i("label: "+row.child(0).text()+", value:"+row.child(1).text());
        }


    } catch (IOException e) {
        e.printStackTrace();
    }

我也在 JAVA 中测试过,在 android 中你可以注释掉 Log.i 方法调用而不是 System.out.println。这并不难。祝你好运。

于 2013-10-14T09:25:43.033 回答