请教下:有一个信息系统是需要用户名和密码才能进入的。进入后点超链接“http://192.168.0.1:8080/mis/show.jsp?id=1000”则显示一个统计表格。
现在要写一个程序,定时读取这个这个页面的内容。应如何做啊。现在我就卡在进入系统这个地方了。
如不通过权限认证的话,在地址栏中键入http://192.168.0.1:8080/mis/show.jsp?id=1000,内容为出错信息
注:权限认证的地方我改动不了

解决方案 »

  1.   

    http://www.ibm.com/developerworks/cn/opensource/os-httpclient/
      

  2.   

    我需要先使用用户名密码登陆,然后再填写表单,httpclient可以做到吗?
      

  3.   

    当然可以,说白了表单还不就是一次HTTP请求
      

  4.   

    我也有这个问题,某位大侠也给我说要用HttpClient,我还没具体查它的用法,估计可用。
      

  5.   

    import java.io.BufferedInputStream; import java.io.InputStream; import java.io.InputStreamReader; import java.io.StringReader; import java.net.HttpURLConnection; import java.net.URL; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; import org.xml.sax.InputSource; public class Test { public static void main(String[] args) throws Exception{ String uri="http://www.p5w.net/stock/hydx/bkfx/index_160.xml"; String encoding="gb2312"; URL url = new URL(uri); System.getProperties().setProperty("http.proxyHost", "172.28.88.2"); System.getProperties().setProperty("http.proxyPort", "80"); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.connect(); InputStream in = new BufferedInputStream(conn.getInputStream()); InputStreamReader isr = new InputStreamReader(in,encoding); int str=-1; StringBuffer sb=new StringBuffer(); while((str=isr.read())!=-1) sb.append((char)str); DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); isr.close(); Document doc=db.parse(new InputSource(new StringReader(sb.toString()))); //这生成一个doc类型  } }自己format下。