使用jsoup

时间:2016-08-02 18:11:55

标签: web-scraping jsoup

我想从这里获得原子钟http://watches.uhrzeit.org/atomic-clock.php,我写了这个程序

import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements; 
import java.io.*;
import java.util.*;
public class da {

/**
 * @param args
 */
public static void main(String[] args) {
try{
    Document doc=Jsoup.connect("http://watches.uhrzeit.org/atomic-clock.php").get();
    Elements spans = doc.select("span[id=anzeige_std]");
    System.out.println(spans.text());

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

}

问题在于它为什么不打印任何东西(我在这件事上是菜鸟,我想学习)。

1 个答案:

答案 0 :(得分:1)

首先,要按其ID选择元素,请使用格式element#id。你拥有它的方式是其他属性。

其次,时钟就在这个html上:

<div id="timer">
    <div id="timeText">
        <h2>current time CET</h2>
        <div id="anzeige_zeit">22:03:10</div> 
        <div id="anzeige_datum">Tuesday,  2. August 2016</div>
        <div id="anzeige_kw">calendar week 31</div>
    </div>
</div>

我们可以使用CSS Selectors这样定位:

    Document doc = Jsoup.connect("http://watches.uhrzeit.org/atomic-clock.php").get();
    Element atomicTime = doc.select("div#anzeige_zeit").first();
    System.out.println(atomicTime.ownText());

<强>输出

22:08:05