jetdw 2013-07-23 01:48 采纳率: 0%
浏览 353
已采纳

java读取网页数据超时

[code="java"]public static void main(String[] args) throws IOException {
getWebData("http://bbs.csdn.net/topics/380263902");
}

private static String getWebData(String strurl) { 
    try { 
        URL url = new URL(strurl); 
        // 打开连接,此处只是创建一个实例,并没有真正的连接 
        HttpURLConnection httpCon = (HttpURLConnection) url.openConnection(); 
        httpCon.setConnectTimeout(300000); 
        httpCon.setReadTimeout(300000); 


        httpCon.connect();//建立连接 
        InputStream inputStream = httpCon.getInputStream(); 
        InputStreamReader inputReader = new InputStreamReader(inputStream,"utf-8"); 
        BufferedReader bufferReader = new BufferedReader(inputReader); 
        StringBuffer sb = new StringBuffer(); 
        String inputLine = null;   
        while ((inputLine = bufferReader.readLine()) != null) {    
            sb.append(inputLine+"\n"); 
        }    
        bufferReader.close();   
        inputReader.close(); 
        inputStream.close(); 
        httpCon.disconnect(); 
        System.out.println(sb.toString().trim()); 
        return sb.toString(); 
    } catch (Exception e) { 
        // TODO Auto-generated catch block 
        e.printStackTrace(); 
    } 
    System.out.println("======================================================="); 
    return null; 
}[/code]

代码如上,但是执行上面代码报如下错误

java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at sun.net.NetworkClient.doConnect(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.openServer(Unknown Source)
at sun.net.www.http.HttpClient.(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.http.HttpClient.New(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
at test.getWebData(test.java:30)
at test.main(test.java:18)

我通过IE浏览器是可以打开http://bbs.csdn.net/topics/380263902该页面的,但是通过代码就不能获取页面数据,不知道是什么原因

展开全部

  • 写回答

3条回答 默认 最新

  • cqskyeagle 2013-07-23 02:04
    关注

    应该查看一下 你的杀毒软件或者防火墙之类的东西,我以前也遇见过 webservice死活也联不通。后来关闭了杀毒软件和防火墙就o了!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部