大家好,小弟使用JDIC组件(一个通过java调用本地默认浏览器将网页嵌在swing的的第三方组件)抓取网页信息,因为JDIC有一个问题,通过其函数getContent()(该函数意思为获取网页的原文件),但是得到的经常出现信息丢失,如某些HTML标记丢了,导致信息不全,但是返回到swing中的页面又是完好的,所以请教各位:如何从浏览器中提取网页原文件,浏览器不是先把网页文件下载到本地再显示的吗?那我是否可以从本地文件系统中找到那个文件再读取呢?问题是这个文件是如何命名的呢?我如何找到它? 当然如果有什么方法替代getContent()函数,那是最好,谢谢~~谢谢~~

解决方案 »

  1.   

    java applet 
    java webstart其实Swing中有一个控件JEditorPane能做到这个功能 
    大家使用该控件的时候只需要调用下列两方法setContentTypeForEditorKit("text/html",new HTMLEditorKit());
    setPage(new URL("demo.html"));但是这样以后只能进行简单操作 还不能十分细致地将网页呈现出来
    我们例如有这样一个网页文件
    <html>
        <head>
        <style type='text/css'>
            A{text-decoration: none; color: #000000; }
            A:hover {text-decoration: underline; color: #FF0000; }
        </style>
    </head>
    <body>
            <a href="www.google.com">Google</a><br>
            <a href="www.yahoo.com">Yahoo!</a>
    </body>
    </html>
    至于要获取远程网页,只要socket就可以搞定了
      

  2.   


    非常感谢,我用了个组件,JDIC,它通过dll调用本机默认浏览器,跟你说的JEditorPane有点类似,但是比JEditorPane强大的是JDIC可以分析JS、CSS。