Package net.traviangui

Source Code of net.traviangui.testRallyPoint

package net.traviangui;
import java.io.File;
import java.net.URL;

import net.traviangui.model.TroopType;
import net.traviangui.model.TroopUnit;

import org.htmlcleaner.CleanerProperties;
import org.htmlcleaner.HtmlCleaner;
import org.htmlcleaner.TagNode;



public class testRallyPoint
{
   
  public static void main(String[] args) throws Exception
  {
      Translator.load( "es");
     
      // create an instance of HtmlCleaner
    HtmlCleaner cleaner = new HtmlCleaner();

    // take default cleaner properties
    CleanerProperties props = cleaner.getProperties();

    // customize cleaner's behaviour with property setters
//    props.setXXX(...);

    // Clean HTML taken from simple string, file, URL, input stream,
    // input source or reader. Result is root node of created
    // tree-like structure. Single cleaner instance may be safely used
    // multiple times.
//    TagNode node = cleaner.clean( new File("tests/accept.html"));

    TagNode node = cleaner.clean( new File("tests/rallypoint.htm"));


    Object[] myNodes;
       


        myNodes = node.evaluateXPath( "//div[@id='content']//h1/text( )");

    String[] data = Util.patternExtract( "([^(]+)"+Translator.get(Translator.LEVEL)+" (\\d+)", myNodes[0].toString(), 2);
        String currentLocation = Translator.translate( data[0].trim());
        int    level    = Integer.parseInt( data[1].trim());
    System.out.printf( "currentLocation=%s, level=%d\n\n", currentLocation, level);

    int  numNode = 0;
        Object[] domTroops = node.evaluateXPath( "//div[@id='content']//table");
        for( Object t : domTroops) {
          if( t instanceof TagNode) {
            TagNode domTroop = (TagNode) t;
           
                Object[] domTroopTypes = domTroop.evaluateXPath( ".//tbody[@class='units']/tr[position()=1]/td/img/@title");
                Object[] domTroopQuantities = node.evaluateXPath( ".//tbody[@class='units']/tr[position()=2]/td/text()");
                Object[] domLocations = node.evaluateXPath( "//div[@id='content']//table/thead/tr/td[2]/a/@href");

              String codLocation = "<local>";
              if( numNode > 0) { // Other villages
                    codLocation = Util.patternExtract( "\\?d=(\\d+)&", domLocations[numNode].toString(), 1)[0];
              }                 
              numNode++;
             
              System.out.println( "* Village=" + codLocation);
//                Util.printTagNodes( domTroopTypes);
//                Util.printTagNodes( domTroopQuantities);
                for( int i=0 ; i < domTroopTypes.length ; i++) {
//                  System.out.printf( "type=%s, quantity=%d\n", domTroopTypes[i].toString(), troopQuantity);

                  String troopType  = Translator.translate( domTroopTypes[i].toString().trim());
                  int troopQuantity = Integer.parseInt( domTroopQuantities[i].toString().trim());
                  TroopUnit tu = new TroopUnit( TroopType.getByName( troopType), troopQuantity);
                  System.out.println( " * " + tu);
                }
          }
        }

        myNodes = node.evaluateXPath( "//div[@id='content']//table[position()>1]/thead/tr/td[2]/a/@href");
        myNodes = node.evaluateXPath( "//div[@id='content']//table/thead/tr/td[2]/a/@href");
//        myNodes = node.evaluateXPath( "//div[@id='content']//table");
        Util.printTagNodes( myNodes);

 
 
  }
       

}
TOP

Related Classes of net.traviangui.testRallyPoint

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.