http://hq.sinajs.cn是sina股票数据接口, 可这样查询个股实时信息:http://hq.sinajs.cn/list=sh601006, 但是我发现从一个链接中点开,可以获得正确的返回文本, 但是如果把"http://hq.sinajs.cn/list=sh601006"放在地址栏然后回车浏览器就报无法链接, 真奇怪, 高人可否解释? 另外一个就是我发现我用如下代码试图从java中获取返回的股票信息都会抛出Exception in thread "main" java.net.UnknownHostException: hq.sinajs.cn. .
我个人怀疑从链接点开一个url和在地址栏敲url向server发送的请求有所不同. 因外我觉得在java中用httpClient或许可以. 
请高人指点,且给出可运行的代码. 

解决方案 »

  1.   

    因为这个页面返回的是一句js,没有其它的html相关的标识,可能有的浏览器显示会有问题,我用chrome显示正常
    点击和手工输入发的请求是一样的,都是get请求,参数也一样,没有什么区别
    你不必用服务器端去抓这个页面,直接在页面里script引用过来,用js处理效率不是更高吗下面的是java代码
    HttpClient httpclient = new DefaultHttpClient();
    StringBuilder sb=new StringBuilder();
    HttpGet httpget = new HttpGet("http://hq.sinajs.cn/list=sh601006");

           
         ResponseHandler<String> responseHandler = new BasicResponseHandler();
    //System.out.println(i);
    String responseBody = httpclient.execute(httpget, responseHandler);
    String s= new String(responseBody.getBytes("iso8859-1"),"gb2312");

      System.out.println(s);
    httpclient.getConnectionManager().shutdown();