亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 10994 | 回復(fù): 12
打印 上一主題 下一主題

請(qǐng)大家給個(gè)思路,用java分析html文件 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2004-06-28 11:26 |只看該作者 |倒序?yàn)g覽
要我做這么一個(gè)東西。用戶有幾個(gè)網(wǎng)站,大部份是 htm,讓我做個(gè)程序,批量讀這些東西,并分出欄目,內(nèi)容,圖片等等放到庫里。就是說,原來用戶沒有庫,現(xiàn)在要把原來的文件,按網(wǎng)站的結(jié)構(gòu),放到相應(yīng)字段中。
之后,從庫里讀出這些東西,再用我們的模板(xsl)顯示出來。
并且,還要可以修改已經(jīng)導(dǎo)入庫的網(wǎng)站內(nèi)容。
這個(gè)任務(wù)一周完成,我想老板是想開了我,又不想直說。

現(xiàn)在首先要做的就是分析html,取出其中的title,body,img等東西,最好能取出它的結(jié)構(gòu)樹。

我現(xiàn)在還沒什么想法,請(qǐng)大家給個(gè)思路。

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2004-06-28 12:18 |只看該作者

請(qǐng)大家給個(gè)思路,用java分析html文件

http://tertius.org/software/javahtml/

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2004-06-29 22:43 |只看該作者

請(qǐng)大家給個(gè)思路,用java分析html文件

非常感謝版主。貼出我的測試代碼,也讓大家了解下htmlparser。代碼可以正確運(yùn)行,但有的地方可以簡化,有的地方考慮不多,比如異常。吾現(xiàn)只要這點(diǎn)功能,沒多想。請(qǐng)大家指教。

[code]import org.htmlparser.* ;
import org.htmlparser.tags.* ;
import java.io.* ;

public class TestHtmlParser{
        public static void main(String[] args) throws Exception {

                //Parser parser = new Parser("file://localhost/F:/study/htmlparser/html/1.htm" ;

                FileReader fr = null ;
                BufferedReader br = null ;
               
                try{
                        fr = new FileReader("html/objects.html";
                        br = new BufferedReader(fr) ;
                        StringBuffer html = new StringBuffer() ;
                        String s = br.readLine() ;
                        while(s!=null){
                                html.append(s);
                                s = br.readLine() ;
                        }

                        s = new String(html.toString().getBytes("gb2312","8859_1" ;
                       
                        Parser parser = new Parser() ;
                                                  parser.setInputHTML(s) ;
//parser.setEncoding("gb2312";

                        //Get title
                        Node[] titles = parser.extractAllNodesThatAre(TitleTag.class) ;
                        TitleTag title = (TitleTag)titles[0];
                        System.out.println("title is :"+ new String(title.getTitle().getBytes("gb2312","gb2312");
                       
                        //Reset the parser to start from the beginning again.
                        parser.reset() ;                       
                        //Get <img>; as a Array
                        Node[] images =  parser.extractAllNodesThatAre (ImageTag.class);
                        if (images.length!=0){
                                for (int i = 0; i < images.length; i++)    {
                                        ImageTag imageTag = (ImageTag)images;
                                        System.out.println("imagesURl="+new String(imageTag.getImageURL().getBytes(),"gb2312");                 
                                }
                        }else{
                                System.out.println("

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2004-06-30 09:13 |只看該作者

請(qǐng)大家給個(gè)思路,用java分析html文件

amu23鉆研和共享的精神都很值得學(xué)習(xí) 啊

論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2004-06-30 11:44 |只看該作者

請(qǐng)大家給個(gè)思路,用java分析html文件

我所知道的,實(shí)用的都是用c寫的。java提供了大量的類庫,
不過算法應(yīng)該可以借鑒。 :)

論壇徽章:
0
6 [報(bào)告]
發(fā)表于 2004-06-30 14:29 |只看該作者

請(qǐng)大家給個(gè)思路,用java分析html文件

我把代碼拿下來試了一下
import org.htmlparser.* ;
import org.htmlparser.tags.* ;
是哪來的呀

論壇徽章:
0
7 [報(bào)告]
發(fā)表于 2004-06-30 14:46 |只看該作者

請(qǐng)大家給個(gè)思路,用java分析html文件

原帖由 "mills" 發(fā)表:
我把代碼拿下來試了一下
import org.htmlparser.* ;
import org.htmlparser.tags.* ;
是哪來的呀
看2樓,我的回復(fù)

論壇徽章:
0
8 [報(bào)告]
發(fā)表于 2004-06-30 15:01 |只看該作者

請(qǐng)大家給個(gè)思路,用java分析html文件

是不是要把那個(gè)下載后編譯了呀,我才學(xué)了三天的java不是很清楚

論壇徽章:
0
9 [報(bào)告]
發(fā)表于 2004-06-30 17:32 |只看該作者

請(qǐng)大家給個(gè)思路,用java分析html文件

不用,這里只用了htmlparser.jar這個(gè)包。下載后,加到classpath中就行了。
程序簡化了下,上面的程序我是想練習(xí)下File.

  1. import org.htmlparser.* ;
  2. import org.htmlparser.tags.* ;
  3. import org.htmlparser.util.ParserException ;
  4. import java.io.IOException;

  5. public class TestHtmlParser{
  6.         public static void main(String[] args){

  7.                 String[] url= new String[4] ;
  8.                 url[0] = "http://www.72891.cn/forum/viewtopic.php?p=2371454#2371454pp";
  9.                 url[1] = "http://www.cgs.gov.cn/NEWS/Geology%20News/2004/20040629/20040629001.htm";
  10.                 url[2] = "http://www.mmot.com.tw1/" ;
  11.                 url[3] = "file://localhost/F:/study/htmlparser/html/8859.htm" ;
  12.                 String currentUrl = url[0] ;
  13.                
  14.                 String[] encoding = new String[4] ;
  15.                 encoding[0] = "8859_1";
  16.                 encoding[1] = "gb2312";
  17.                 encoding[2] = "big5" ;
  18.                 encoding[3] = "EUC-CN" ;
  19.                 String currentEncoding = encoding[1] ;
  20.                
  21.                 //Get <img>; as a Array
  22.                 Parser parser = new Parser() ;
  23.                
  24.                 try{
  25.                         parser.setURL(currentUrl) ;
  26.                         parser.setEncoding(currentEncoding) ;
  27.                         Node[] images =  parser.extractAllNodesThatAre (ImageTag.class);
  28.                         if (images.length!=0){
  29.                                 for (int i = 0; i < images.length; i++)    {
  30.                                         ImageTag imageTag = (ImageTag)images[i];
  31.                                         System.out.println("imageURl="+imageTag.getImageURL());                 
  32.                                 }
  33.                         }else{
  34.                                 System.out.println("not found <img>;!") ;
  35.                         }
  36.                 }catch(ParserException parserException){
  37.                         System.out.println("parserException in parsing <img>; ") ;
  38.                         System.out.println(parserException.getMessage());
  39.                 }catch(Exception e){
  40.                         System.out.println("java exception in parsing <img>;") ;
  41.                         System.out.println(e.getClass());                       
  42.                 }
  43.                                        
  44.                 //Get <title>;
  45.                 try{
  46.                         parser.setURL(currentUrl);
  47.                         parser.setEncoding(currentEncoding);
  48.                         Node[] titles = parser.extractAllNodesThatAre(TitleTag.class) ;
  49.                         if (titles.length>;=1){
  50.                                 TitleTag title = (TitleTag)titles[0];
  51.                                 System.out.println("title is :"+ title.getTitle());
  52.                         }else{
  53.                                 System.out.println("not found <table>;!") ;
  54.                         }               
  55.                         //System.out.println("title is :"+ new String(title.getTitle().getBytes("EUC-CN"),"gb2312"));                                
  56.                 }catch(ParserException parserException){
  57.                         System.out.println("parserException in parsing <title>; ") ;
  58.                         System.out.println(parserException.getMessage());
  59.                 }catch(Exception e){
  60.                         System.out.println("java exception in parsing <title>;") ;
  61.                         System.out.println(e.getClass());                       
  62.                 }       
  63.         }
  64.        
  65. }
復(fù)制代碼

論壇徽章:
0
10 [報(bào)告]
發(fā)表于 2004-07-01 12:25 |只看該作者

請(qǐng)大家給個(gè)思路,用java分析html文件

我剛剛做完練習(xí)
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP