testitemparser.java

来自「用来为垂直搜索引擎抓取数据的采集系统」· Java 代码 · 共 65 行

JAVA
65
字号
/*
 * *****************************************************
 * Copyright (c) 2005 IIM Lab. All  Rights Reserved.
 * Created by xuehao at 2005-10-12
 * Contact: zxuehao@mail.ustc.edu.cn
 * *****************************************************
 */

package org.indigo.tests.parser;

import java.util.ArrayList;

import org.indigo.parser.ItemParser;
import org.indigo.parser.Parser;
import org.indigo.xml.FiltPair;

import junit.framework.TestCase;

public class TestItemParser extends TestCase
{
    public void testItemParser()
    {
                
        Parser parser = new Parser();
        ItemParser itemParser = new ItemParser();
        itemParser.setParser( parser );
        
        String url = "http://www.ahnw.gov.cn/scxx/schq/?datetime=&page=1&zl=&diqu=&chanpin=&dl=&NewDay=0";
        itemParser.setUrl( url );
        String startStr,endStr;
        
        
        startStr = "<td class=\"z\" width=\"24%\" height=20 style=\"border-right:1 solid #FFFFFF;border-bottom: 1 solid #FFFFFF\">&nbsp;";
        endStr = "</td>";

        ArrayList list = new ArrayList();
        list.add( 0, new FiltPair(startStr,endStr) );
        
        startStr = "<td width=\"11%\" class=\"z\" style=\"border-right:1 solid #FFFFFF;border-bottom: 1 solid #FFFFFF\">&nbsp;";
        list.add( 1, new FiltPair(startStr,endStr) );

        startStr = "<td width=\"12%\" class=\"z\" style=\"border-right:1 solid #FFFFFF;border-bottom: 1 solid #FFFFFF\">&nbsp;";
        list.add( 2, new FiltPair(startStr,endStr) );

        startStr = "<td width=\"45%\" class=\"z\" style=\"border-right:1 solid #FFFFFF;border-bottom: 1 solid #FFFFFF\">&nbsp;";
        list.add( 3, new FiltPair(startStr,endStr) );
        
        itemParser.setPairList( list );
        itemParser.open();
        
        String str = null;
        str = itemParser.getAItem();
        
        itemParser.close();
        
        String s;
        s = "豌豆`元/公斤`2.00`安徽池州市翠百路农贸市场";
        System.out.println( str );
        System.out.println( s );
        assertTrue( str.equals( s ) );
        
        
        
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?