jetdw 2013-07-23 09: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 10:04
    关注

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

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

报告相同问题?

悬赏问题

  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记