Java从网页获取javascript内容

时间:2015-05-28 18:15:04

标签: javascript java web-scraping jsoup

我希望从Betfair现场获取足球数据。我找到了网页统计部分的链接,在这里:

https://wab-visualisation.performgroup.com/csb/index.html?wbuserId=0&token=f6eb1c7fff3ad3ca5153b159ac4b8b69fcb117ec7578893e5c9f9f6a608503fe4e64ebad85c7e4faa8ddea4e8ce70e99ce88551b77b8fe02616b56bf89af950ad89984a1cfcc8eb589dd1679b8204e8e0983fdff5c7599d00cabd805c0bd18aaf29485b0c122413c89ad5f7e70684e5f1609dea97f05286919f137baab64d36b&width=374&height=214&cssdiff=https%3a%2f%2fassets.cdnbf.net%2fstatic%2fdatavis%2fbf-css%2fbetfair1.css&flash=y&streamonly=true&partnerId=7&statsswitch=false&lang=en&defaultview=stats&version=1.15

(页面会定期更改,因此请检查https://www.betfair.com/sport/inplay并选择任何匹配项,然后获取"匹配面板的来源"在左侧)

但是,当我尝试使用JSoup进行扫描时,它似乎无法返回任何内容。

    Document doc = Jsoup.connect("https://wab-visualisation.performgroup.com/csb/index.html?wbuserId=0&token=f6eb1c7fff3ad3ca5153b159ac4b8b69fcb117ec7578893e5c9f9f6a608503fe4e64ebad85c7e4faa8ddea4e8ce70e99ce88551b77b8fe02616b56bf89af950ad89984a1cfcc8eb589dd1679b8204e8e0983fdff5c7599d00cabd805c0bd18aaf29485b0c122413c89ad5f7e70684e5f1609dea97f05286919f137baab64d36b&width=374&height=214&cssdiff=https%3a%2f%2fassets.cdnbf.net%2fstatic%2fdatavis%2fbf-css%2fbetfair1.css&flash=y&streamonly=true&partnerId=7&statsswitch=false&lang=en&defaultview=stats&version=1.15").get();

    doc.select("#in-game-stats > div:nth-child(1) > div.si-home-value").text();

我做错了吗?有办法解决这个问题吗?

由于

1 个答案:

答案 0 :(得分:0)

响应是纯文本的,没有可以查询的DOM。您可能希望使用PhantomJS驱动程序查看Selenium以模拟用户代理操作。是否合法从该网站获取数据是另一个问题。