簡體   English   中英

從Jsoup Element對象獲取字符串文本

[英]Getting a string text from Jsoup Element object

我試圖從Yahoo Finance獲得股票報價。提取頁面,找到帶有價格報價的span標簽,但是當我嘗試將其輸出到控制台時,什么也沒發生。有人可以幫忙嗎?

Document doc = Jsoup.connect("http://finance.yahoo.com/q?s=AAPL").get();
    Elements quote = doc.select("yfs_184_aapl");
    for(Element h: quote)
    {
        String price = h.text();
        System.out.println(price);
    }

我也知道Element對象不是空的:

if(quote == null)
    {
        System.out.println("The element is empty");
    }

編輯:

我嘗試過這種方法

Document doc = Jsoup.connect("http://finance.yahoo.com/q?s=AAPL").get();
    Element quote = doc.getElementById("yfs_184_aapl");
    String price = quote.text();
    System.out.println(price);

當我嘗試打印價格變量時,它給了我空指針異常。

ID yfs_184_aapl也是股票價格的跨度標簽ID。如果您檢查股票價格元素,則應該可以找到它。

我簡要介紹了您提供的網址。 我認為您誤解了CSS選擇器語法,因為您要查找的元素似乎具有ID“ yfs_184_aapl”。 您正在搜索具有該名稱的標簽。 所以正確的查詢應該是

Element quote = doc.select("#yfs_184_aapl").first();

要么

Element quote = doc.getElementById("yfs_184_aapl")

我確實檢查了該內容是直接加載還是通過AJAX加載。 您很幸運,它已經包含在原始內容中,因此使用給定的替代方法應該能夠獲得所需的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM