我是java jsuop中的新手
我想获得下一行的最后价格: http://www.aastocks.com/en/forex/quote/quote.aspx?symbol=NZDHKD&process=y
我有以下代码:
Elements answerers = document.select(" div.content div.inline_block.vat.float_l div.boxForex div.font26 span.neg");
但是它返回一个错误: java.net.SocketTimeoutException:读取超时
我认为我错了#34; document.select"部分,有人可以帮助我吗? 非常感谢。
答案 0 :(得分:0)
服务器的响应时间过长,因此达到默认超时并抛出异常:
如果发生超时,将抛出IOException。默认 超时为3秒(3000毫安)。
所以只需设置一个更高的timeout:
示例代码
String url = "http://www.aastocks.com/en/forex/quote/quote.aspx?symbol=NZDHKD&process=y";
String userAgent = "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36";
try {
Document doc = Jsoup.connect(url).userAgent(userAgent).timeout(5000).get();
System.out.println(doc.select("div.content div.inline_block.vat.float_l div.boxForex div.font26 span.neg").first().text());
} catch (IOException e) {
e.printStackTrace();
}
<强>输出强>
5.6813