首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用JSoup从网页抓取数据失败

使用JSoup从网页抓取数据失败
EN

Stack Overflow用户
提问于 2018-03-21 08:26:01
回答 2查看 74关注 0票数 0

我的问题是:从网页上刮掉诅咒价格(8875.53)。

代码语言:javascript
复制
       <span class="inst-rate">8875.53</span>

但我的方法失败了。有人知道我哪里错了吗?

代码语言:javascript
复制
    import java.io.IOException;
    import org.jsoup.Jsoup;
    import org.jsoup.nodes.Document;
    import org.jsoup.select.Elements;
    public class JavaTest {
    public static void main(String[] args) throws IOException {

    Document doc= 
    Jsoup.connect("https://www.plus500.de/Instruments/BTCUSD").get();
    Elements element =doc.select(".inst-rate");
    System.out.println(element); 
     }
    }

控制台输出:<span class="inst-rate" v-text="BuyPrice"></span>

EN

回答 2

Stack Overflow用户

发布于 2018-03-21 08:29:42

您需要访问元素的文本:https://jsoup.org/cookbook/extracting-data/attributes-text-html

也许element.text()就是您所需要的

票数 0
EN

Stack Overflow用户

发布于 2018-03-21 19:49:22

此标记中的文本不是初始html的一部分,而是在页面加载后由JavaScript设置的。您可以通过在浏览器中禁用JavaScript来检查它。Jsoup只获取静态html,不执行JavaScript代码。

当您检查从页面建立的连接时,您会发现该值是通过请求此API进行更新的:

https://www.plus500.de/api/LiveData/FeedUpdate?instrumentId=3406

请求这个url,解析结果,你就会得到所需的值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49396250

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档