Advertisement
Guest User

Untitled

a guest
Oct 30th, 2017
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 28.78 KB | None | 0 0
  1. package sk.tuke.tssu;
  2.  
  3.  
  4. import org.jsoup.Jsoup;
  5. import org.jsoup.nodes.Document;
  6. import org.jsoup.nodes.Element;
  7. import org.jsoup.select.Elements;
  8. //import org.openqa.selenium.WebElement;
  9. import java.io.IOException;
  10. import java.sql.*;
  11. import java.text.ParseException;
  12. import java.text.SimpleDateFormat;
  13. import java.util.ArrayList;
  14. import java.util.regex.Matcher;
  15. import java.util.regex.Pattern;
  16.  
  17.  
  18. public class Orsr {
  19.     static final String JDBC_DRIVER = "com.mysql.jdbc.Driver";
  20.     static final String DB_URL = "jdbc:mysql://localhost/";
  21.  
  22.     //  Database credentials
  23.     static final String USER = "tssuuser";
  24.     static final String PASS = "tssuuserPW";
  25.  
  26.     public static void main(String[] args) throws IOException, ParseException, InterruptedException {
  27.         Element row = null;
  28.         String html;
  29.         ArrayList<Long> icoList = new ArrayList<Long>();
  30.         int i = 0;
  31.         Connection conn = null;
  32.         Statement stmt = null;
  33.         //ORSR
  34.         try {
  35.             //STEP 2: Register JDBC driver
  36.             Class.forName("com.mysql.jdbc.Driver");
  37.  
  38.             //STEP 3: Open a connection
  39.             System.out.println("Connecting to a selected database...");
  40.             conn = DriverManager.getConnection(DB_URL, USER, PASS);
  41.             System.out.println("Connected database successfully...");
  42.  
  43.             //STEP 4: Execute a query
  44.             System.out.println("Creating statement...");
  45.             stmt = conn.createStatement();
  46.  
  47.             String sql = "SELECT  ICO FROM tssu.faktura";
  48.             ResultSet rs = stmt.executeQuery(sql);
  49.             //STEP 5: Extract data from result set
  50.             while (rs.next()) {
  51.                 //Retrieve by column na
  52.                 long ico = rs.getLong("ICO");
  53.                 icoList.add(ico);
  54.                 //System.out.println(i+ " ICO: " + ico);
  55.                 i++;
  56.             }
  57.             rs.close();
  58.         } catch (Exception e) {
  59.             //Handle errors for Class.forName
  60.             e.printStackTrace();
  61.         } finally {
  62.             //finally block used to close resources
  63.             try {
  64.                 if (stmt != null)
  65.                     conn.close();
  66.             } catch (SQLException se) {
  67.             }// do nothing
  68.             try {
  69.                 if (conn != null)
  70.                     conn.close();
  71.             } catch (SQLException se) {
  72.                 se.printStackTrace();
  73.             }//end finally try
  74.         }//end try
  75.  
  76.         // System.out.println(icoList.size());
  77. //--------------------------DOWNLOAD----------------------------------------
  78.  
  79.         //214,245,284 chybne
  80.  
  81.         for (int j = 200; j < icoList.size(); j++) {
  82.             System.out.println("***************************************************************************************");
  83.             System.out.println("Cislo faktury v cykle: " + j);
  84.  
  85.             if (j % 100 == 0) {
  86.                 System.out.println("Ideme spinkať...");
  87.                 Thread.sleep(2500);
  88.             }
  89.  
  90.  
  91.             ////////////////////////////////////////////////
  92.             ////////////tabulka dodavatel////////////////////
  93.             boolean isOZPZO = false;
  94.             String sidlo = null;
  95.             String denVymazu = null;
  96.             String denZapisu = null;
  97.             String obchodnéMeno;
  98.             String čisloDomu;
  99.             String pravnaForma = null;
  100.             String PSČ;
  101.             String mesto;
  102.             String ulica;
  103.             String ico = String.valueOf(icoList.get(j));
  104.             ///////////////////////////////////////////////////
  105.  
  106.             ////////////////////////////////////////////////
  107.             ////////////tabulka statutarny organ////////////
  108.             String statutarnyOrgan = null;
  109.             ///////////////////////////////////////////////
  110.  
  111.             ico = ico.replaceAll(" ", "");
  112.  
  113.             String url = "http://orsr.sk/hladaj_ico.asp?ICO=+" + ico;
  114.             System.out.println("Adresa pre URL PRE HLADANIE:" + url);
  115.  
  116.             Document document = Jsoup.connect(url).get();
  117.             Elements links = document.select("a[href]");
  118.             String[] urls = new String[links.size()];
  119.  
  120.             for (i = 0; i < links.size(); i++) {
  121.                 urls[i] = links.get(i).attr("href");
  122.             }
  123.             url = "http://orsr.sk/" + urls[8];
  124.             Pattern p = Pattern.compile("&P=1");
  125.             Matcher m = p.matcher(url);
  126.             if (m.find()) {
  127.  
  128.                 System.out.println("Adresa pre URL PRE DETAIL:" + url);
  129.                 System.out.println("---------------------");
  130.  
  131.                 document = Jsoup.connect(url).get();
  132.                 int tableSize = document.select("table").size();
  133.                 Element table = document.select("table").get(4);
  134.                 Elements rows = table.select("tr");
  135.                 p = Pattern.compile("Obchodné meno:");
  136.                 m = p.matcher(rows.toString());
  137.  
  138.                 if (m.find()) {
  139.                     row = rows.get(1);
  140.                     Elements cols = row.select("td");
  141.                     Element col = cols.get(0);
  142.                     obchodnéMeno = col.toString();
  143.                     obchodnéMeno = obchodnéMeno.replaceAll("<[^>]*>", "");
  144.                     System.out.println("Obchodné meno: " + obchodnéMeno);
  145.                 } else {
  146.                     isOZPZO = true;
  147.                     row = rows.get(1);
  148.                     Elements cols = row.select("td");
  149.                     Element col = cols.get(0);
  150.                     obchodnéMeno = col.toString();
  151.                     obchodnéMeno = obchodnéMeno.replaceAll("<[^>]*>", "");
  152.                     System.out.println("Obchodné meno: " + obchodnéMeno);
  153.                 }
  154.  
  155.                 ///////////////////////vlozenie obchodneho mena do tabulky dodavatel
  156.  
  157.                 int helpSidlo = 0;
  158.                 int helpDenZapisu = 0;
  159.                 int helpDenVymazu = 0;
  160.                 int helpPravnaForma = 0;
  161.                 int helpStatutarnyOrgan = 0;
  162.  
  163.                 for (int l = 0; l < tableSize - 1; l++) {
  164.                     table = document.select("table").get(l);//7
  165.                     rows = table.select("tr");
  166.                     for (int n = 0; n < rows.size(); n++) {
  167.                         row = rows.get(n);
  168.                         p = Pattern.compile("Sídlo:");
  169.                         m = p.matcher(row.toString());
  170.                         if (m.find()) {
  171.                             helpSidlo = n;
  172.                             tableSize = 0;
  173.                             break;
  174.                         }
  175.                         p = Pattern.compile("Miesto podnikania:");
  176.                         m = p.matcher(row.toString());
  177.                         if (m.find()) {
  178.                             helpSidlo = n;
  179.                             tableSize = 0;
  180.                             break;
  181.                         }
  182.                         p = Pattern.compile("Sídlo organizačnej zložky:");
  183.                         m = p.matcher(row.toString());
  184.                         if (m.find()) {
  185.                             helpSidlo = n;
  186.                             tableSize = 0;
  187.                             break;
  188.                         }
  189.                     }
  190.  
  191.  
  192.                 }
  193.                 m = p.matcher(row.toString());
  194.                 row = rows.get(helpSidlo);
  195.                 if (m.find())
  196.                     row = rows.get(helpSidlo + 1);
  197.  
  198.                 Elements cols = row.select("td");
  199.                 Element col = cols.get(0);
  200.                 sidlo = col.toString();
  201.                 sidlo = sidlo.replaceAll("<[^>]*>", "");
  202.                 ArrayList<String> rozdelenaAdresa = rozdelAdresu(sidlo);
  203.                 ulica = rozdelenaAdresa.get(0);
  204.                 čisloDomu = rozdelenaAdresa.get(1);
  205.                 mesto = rozdelenaAdresa.get(2);
  206.                 PSČ = rozdelenaAdresa.get(3);
  207.                 //     System.out.println("ULICA: " + ulica + ", CD: " + čisloDomu + ", Mesto: " + mesto + ", psc: " + PSČ);
  208.                 ///////////vlozenie adresy do tabulky dodavatel
  209.  
  210.                 tableSize = document.select("table").size();
  211.  
  212.                 for (int l = 7; l < tableSize - 1; l++) {
  213.                     table = document.select("table").get(l);//7
  214.                     rows = table.select("tr");
  215.                     for (int n = 0; n < rows.size(); n++) {
  216.                         row = rows.get(n);
  217.                         p = Pattern.compile("Deň zápisu:");
  218.                         m = p.matcher(row.toString());
  219.                         if (m.find()) {
  220.                             helpDenZapisu = n;
  221.                             tableSize = 0;
  222.                             break;
  223.                         }
  224.                     }
  225.                 }
  226.                 row = rows.get(helpDenZapisu);
  227.                 m = p.matcher(row.toString());
  228.                 if (m.find())
  229.                     row = rows.get(helpDenZapisu + 1);
  230.                 cols = row.select("td");
  231.                 col = cols.get(0);
  232.                 denZapisu = col.toString();
  233.                 denZapisu = denZapisu.replaceAll("<[^>]*>", "");
  234.                 //   System.out.println("Den zápisu: " + denZapisu);
  235.                 ///////////vlozenie dna zapisu dodavatel
  236.                 // System.out.println("---------------------");
  237.  
  238.                 tableSize = document.select("table").size();
  239.  
  240.                 for (int l = 9; l < tableSize - 1; l++) {
  241.                     table = document.select("table").get(l);
  242.                     rows = table.select("tr");
  243.                     for (int n = 0; n < rows.size(); n++) {
  244.                         row = rows.get(n);
  245.                         p = Pattern.compile("Právna forma:");
  246.                         m = p.matcher(row.toString());
  247.                         if (m.find()) {
  248.                             helpPravnaForma = n;
  249.                             tableSize = 0;
  250.                             break;
  251.                         }
  252.                     }
  253.                 }
  254.                 row = rows.get(helpPravnaForma);
  255.                 m = p.matcher(row.toString());
  256.                 if (m.find())
  257.                     row = rows.get(helpPravnaForma + 1);
  258.                 cols = row.select("td");
  259.                 col = cols.get(0);
  260.                 pravnaForma = col.toString();
  261.                 pravnaForma = pravnaForma.replaceAll("<[^>]*>", "");
  262.                 System.out.println("Právna forma: " + pravnaForma);
  263.                 ////////////////vlozenie pravnej formy
  264.                 //   System.out.println("=================================================================================================");
  265.  
  266.  
  267.                 tableSize = document.select("table").size();
  268.                 int tableNum = 0;
  269.                 for (int l = 10; l < tableSize - 1; l++) {
  270.                     table = document.select("table").get(l);
  271.                     rows = table.select("tr");
  272.                     for (int n = 0; n < rows.size(); n++) {
  273.                         row = rows.get(n);
  274.                         p = Pattern.compile("Štatutárny orgán:");
  275.                         m = p.matcher(row.toString());
  276.                         Pattern p2 = Pattern.compile("Vedúci organizačnej zložky:");
  277.                         Matcher m2 = p2.matcher(row.toString());
  278.                         if (m.find()) {
  279.                             helpStatutarnyOrgan = n;
  280.                             tableNum = l;
  281.                             tableSize = 0;
  282.                             break;
  283.                         } else if (m2.find()) {
  284.                             helpStatutarnyOrgan = n;
  285.                             tableNum = l;
  286.                             tableSize = 0;
  287.                             System.out.println("neznama premenna:" + helpStatutarnyOrgan);
  288.                             break;
  289.                         }
  290.                     }
  291.                 }
  292.                 row = rows.get(helpStatutarnyOrgan);
  293.                 m = p.matcher(row.toString());
  294.                 if (m.find())
  295.                     row = rows.get(helpStatutarnyOrgan + 1);
  296.                 cols = row.select("td");
  297.                 col = cols.get(0);
  298.                 statutarnyOrgan = col.toString();
  299.                 statutarnyOrgan = statutarnyOrgan.replaceAll("<[^>]*>", "");
  300.  
  301.                 System.out.println("Štatutárny orgán: " + statutarnyOrgan);
  302.                 ///////////////////vlozenie statutarny organ
  303.                 System.out.println("=================================================================================================");
  304.  
  305.                 p = Pattern.compile("Samostatne podnikajúca fyzická osoba");
  306.                 m = p.matcher(pravnaForma);
  307.                 if (m.find() || isOZPZO==true) {
  308.                     statutarnyOrgan = null;
  309.                 }
  310.  
  311.                 //-----------ČLENOVIA------------------------
  312.                 table = document.select("table").get(tableNum);
  313.                 rows = table.select("tr");
  314.                 p = Pattern.compile("Samostatne podnikajúca fyzická osoba");
  315.                 m = p.matcher(pravnaForma);
  316.                 if (!m.find()) {
  317.                     int count = 0;
  318.                     ArrayList<String> vlastnici = new ArrayList<String>();
  319.                     ArrayList<String> poziciaVlastnika = new ArrayList<String>();
  320.                     ArrayList<String> odDatum = new ArrayList<String>();
  321.                     ArrayList<String> doDatum = new ArrayList<String>();
  322.                     for (int n = 1; n < rows.size(); n++) {
  323.                         if (isPredstavenstvo(rows)) {
  324.                             row = rows.get(n);
  325.                             p = Pattern.compile("predstavenstvo");
  326.                             m = p.matcher(row.toString());
  327.                             p = Pattern.compile("konatelia");
  328.                             Matcher matcher = p.matcher(row.toString());
  329.                             if (!m.find()) {
  330.                                 if (!matcher.find()) {
  331.                                     cols = row.select("td");
  332.                                     col = cols.get(0);
  333.                                     String vlastnik = col.toString();
  334.                                     p = Pattern.compile("-");
  335.                                     m = p.matcher(row.toString());
  336.                                     if (m.find()) {
  337.                                         rozdelMenoATituly(oddelPredstavitelov(vlastnik).get(0)); //vracia meno rozdelene na tituly a mena
  338.                                         vlastnici.add(oddelPredstavitelov(vlastnik).get(0).replaceAll("<[^>]*>", ""));
  339.                                         poziciaVlastnika.add(oddelPredstavitelov(vlastnik).get(1).replaceAll("<[^>]*>", "").replaceAll("-", ""));
  340.                                     } else {
  341.                                         rozdelMenoATituly(oddelVlastnikov(vlastnik).get(0));
  342.                                         vlastnici.add(oddelVlastnikov(vlastnik).get(0).replaceAll("<[^>]*>", ""));
  343.                                         poziciaVlastnika.add("člen");
  344.                                     }
  345.                                     col = cols.get(1);
  346.                                     String datumy = col.toString();
  347.                                     datumy = datumy.replaceAll("<[^>]*>", "");
  348.                                     datumy = datumy.replaceAll("&nbsp;", "");
  349.                                     datumy = datumy.replaceAll("od:", "");
  350.                                     p = Pattern.compile("do");
  351.                                     m = p.matcher(datumy);
  352.                                     if (m.find()) {
  353.                                         odDatum.add(oddeldatum(datumy).get(0));
  354.                                         doDatum.add(oddeldatum(datumy).get(1));
  355.                                     } else {
  356.                                         odDatum.add(datumy);
  357.                                         doDatum.add(null);
  358.                                     }
  359.  
  360.                                    // System.out.println("Vlastnik: " + vlastnici.get(count));
  361.  
  362.                                     // rozdelMenoATituly(vlastnici.get(count));
  363.  
  364.                                     //   System.out.println("Pozicia vlastnika: " + poziciaVlastnika.get(count));
  365.                                     //    System.out.println("Datum od: " + editDate(odDatum.get(count).replaceAll("[(\\|)]", "")));
  366.  
  367.                                     if (doDatum.get(count) == null) {
  368.                                         //       System.out.println("Dátum do: Este aktualne");
  369.                                     } else {
  370.                                         //        System.out.println("Dátum do: " + editDate(doDatum.get(count).replaceAll("[(\\|)]", "")));
  371.                                     }
  372.                                     count++;
  373.                                 }
  374.                             }
  375.                         } else {
  376.                             row = rows.get(n);
  377.                             cols = row.select("td");
  378.                             col = cols.get(0);
  379.                             String vlastnik = col.toString();
  380.                             vlastnici.add(oddelVlastnikov(vlastnik).get(0).replaceAll("<[^>]*>", ""));
  381.                             col = cols.get(1);
  382.                             String datumy = col.toString();
  383.                             datumy = datumy.replaceAll("<[^>]*>", "");
  384.                             datumy = datumy.replaceAll("&nbsp;", "");
  385.                             datumy = datumy.replaceAll("od:", "");
  386.                             datumy = datumy.replaceAll("\\(:", "");
  387.  
  388.                             p = Pattern.compile("do");
  389.                             m = p.matcher(datumy);
  390.                             if (m.find()) {
  391.                                 odDatum.add(oddeldatum(datumy).get(0));
  392.                                 doDatum.add(oddeldatum(datumy).get(1));
  393.                             } else {
  394.                                 odDatum.add(datumy);
  395.                                 doDatum.add(null);
  396.                             }
  397.  
  398.                             //    System.out.println("Datum od:" + editDate(odDatum.get(count).replaceAll("[(\\|)]", "")));
  399.  
  400.                             if (doDatum.get(count) == null) {
  401.                                 //     System.out.println(" Este aktualne");
  402.                             } else {
  403.                                 //       System.out.println("Dátum do: " + editDate(doDatum.get(count).replaceAll("[(\\|)]", "")));
  404.                             }
  405.  
  406.                             //    System.out.println("Vlstníci: " + vlastnici.get(count));
  407.  
  408.                             count++;
  409.                         }
  410.                         //    System.out.println("------------");
  411.                     }
  412.                 }
  413.  
  414.                 tableSize = document.select("table").size();
  415.  
  416.                 for (int l = 10; l < tableSize - 1; l++) {
  417.                     table = document.select("table").get(l);
  418.                     rows = table.select("tr");
  419.                     for (int n = 0; n < rows.size(); n++) {
  420.                         row = rows.get(n);
  421.                         p = Pattern.compile("Deň výmazu:");
  422.                         m = p.matcher(row.toString());
  423.                         if (m.find()) {
  424.                             helpDenVymazu = n;
  425.                             tableSize = 0;
  426.                             row = rows.get(helpDenVymazu);
  427.                             m = p.matcher(row.toString());
  428.                             if (m.find())
  429.                                 row = rows.get(helpDenVymazu + 1);
  430.                             cols = row.select("td");
  431.                             col = cols.get(0);
  432.                             denVymazu = col.toString();
  433.                             denVymazu = denVymazu.replaceAll("<[^>]*>", "");
  434.                             break;
  435.                         }
  436.  
  437.                     }
  438.                     if (l == tableSize)
  439.                         denVymazu = null;
  440.                 }
  441.  
  442.                 if (denVymazu == null) {
  443.                     //    System.out.println("Den výmazu: FRMA ESTE EXISTUJE");
  444.                 } else {
  445.                     // System.out.println("Den výmazu: " + editDate(denVymazu.replaceAll("[(\\|)]", "")));
  446.                 }
  447.             }
  448.         }
  449.  
  450.     }
  451.  
  452.     private static ArrayList<String> rozdelAdresu(String adresa) {
  453.  
  454.         ArrayList<String> rozdelenaAdresa = new ArrayList<String>();
  455.         if (adresa != null) {
  456.             adresa = adresa.replaceAll(",", "");
  457.             char[] buff = adresa.toCharArray();
  458.             String pom = "";
  459.             int pocitadlomedzier = 0;
  460.  
  461.             for (int i = 1; i < buff.length + 1; i++) {
  462.                 if (buff[i] == ' ' && pocitadlomedzier == 1) {
  463.                     //pom = String.valueOf(buff).trim();
  464.                     //System.out.println(pom);
  465.                     rozdelenaAdresa.add(pom);
  466.                     pocitadlomedzier++;
  467.                     pom = "";
  468.  
  469.                 }
  470.                 if (buff[i] == ' ' && pocitadlomedzier == 2 && Character.isDigit(buff[i + 1])) {
  471.                     //pom = String.valueOf(buff).trim();
  472.                     //System.out.println(pom);
  473.                     rozdelenaAdresa.add(pom);
  474.                     pom = "";
  475.                     pocitadlomedzier++;
  476.                 }
  477.                 if (buff[i] == ' ' && pocitadlomedzier == 3) {  //pre psc
  478.                     pom = String.valueOf(buff).trim();
  479.                     // System.out.println(pom);
  480.                     rozdelenaAdresa.add(pom);
  481.                     break;
  482.                 }
  483.  
  484.  
  485.                 if (buff[i] == ' ' && Character.isDigit(buff[i + 1])) {   //preto lebo ulica moze byt viac slovna
  486.                     rozdelenaAdresa.add(pom);
  487.                     //System.out.println(pom);
  488.                     pom = "";
  489.                     pocitadlomedzier++;
  490.                 } else {
  491.                     pom = pom + String.valueOf(buff[i]);
  492.                     buff[i] = ' ';
  493.                 }
  494.             }
  495.  
  496.         }
  497.         return rozdelenaAdresa;
  498.     }
  499.  
  500.     private static ArrayList<String> oddelPredstavitelov(String predstavitel) {
  501.         ArrayList<String> rozdeleniePredstavitelov = new ArrayList<String>();
  502.  
  503.         if (predstavitel != null) {
  504.             char[] buff = predstavitel.toCharArray();
  505.             String pom = "";
  506.  
  507.             for (int i = 1; i < buff.length + 1; i++) {
  508.  
  509.                 if (buff[i] == '-' && buff[i + 1] == ' ') {     //lebo moze v mene byt -
  510.                     pom = pom.replaceAll("td width=\"67%\">", "");
  511.                     pom = pom.replaceAll("- ", "");
  512.                     rozdeleniePredstavitelov.add(pom);
  513.                     pom = "";
  514.                 }
  515.                 if (buff[i] == '<' && buff[i + 1] == 'b' && buff[i + 2] == 'r' && buff[i + 3] == '>') {
  516.                     pom = pom.replaceAll("td width=\"67%\">", "");
  517.                     Pattern p = Pattern.compile("člen");
  518.                     Pattern p2 = Pattern.compile("predseda");
  519.                     Matcher m = p.matcher(pom);
  520.                     Matcher m2 = p2.matcher(pom);
  521.                     if (!m.find() && !m2.find())
  522.                         pom = "člen";
  523.                     rozdeleniePredstavitelov.add(pom);
  524.                     break;
  525.                 } else {
  526.                     pom = pom + String.valueOf(buff[i]);
  527.                     buff[i] = ' ';
  528.                 }
  529.             }
  530.  
  531.         }
  532.         return rozdeleniePredstavitelov;
  533.     }
  534.  
  535.     private static ArrayList<String> oddelVlastnikov(String vlastnik) {
  536.  
  537.         ArrayList<String> rozdelenieVlastnikov = new ArrayList<String>();
  538.         if (vlastnik != null) {
  539.             char[] buff = vlastnik.toCharArray();
  540.             String pom = "";
  541.             int medzera = 0;
  542.  
  543.             for (int i = 1; i < buff.length + 1; i++) {
  544.                 if (buff[i] == '<' && buff[i + 1] == 'b' && buff[i + 2] == 'r' && buff[i + 3] == '>') {
  545.                     pom = pom.replaceAll("td width=\"67%\">", "");
  546.                     rozdelenieVlastnikov.add(pom);
  547.                     //System.out.println(pom);
  548.                     break;
  549.                 } else {
  550.                     pom = pom + String.valueOf(buff[i]);
  551.                     buff[i] = ' ';
  552.                 }
  553.             }
  554.  
  555.         }
  556.         return rozdelenieVlastnikov;
  557.     }
  558.  
  559.  
  560.     private static ArrayList<String> oddeldatum(String datumy) {
  561.  
  562.         ArrayList<String> rozdeleniedatumov = new ArrayList<String>();
  563.         if (datumy != null) {
  564.             char[] buff = datumy.toCharArray();
  565.             String pom = "";
  566.             int medzera = 0;
  567.  
  568.             for (int i = 1; i < buff.length + 1; i++) {
  569.                 if (buff[i] == 'd') {
  570.                     pom = pom.replaceAll("\\(", "");
  571.                     rozdeleniedatumov.add(pom);
  572.                     pom = "";
  573.                     medzera++;
  574.                 }
  575.                 if (medzera == 1 && i == buff.length - 1) {
  576.                     pom = pom.replaceAll("do:", "");
  577.                     pom = pom.replaceAll("\\(", "");
  578.                     pom = pom.replaceAll("\\)", "");
  579.  
  580.                     rozdeleniedatumov.add(pom);
  581.                     break;
  582.                 } else {
  583.                     pom = pom + String.valueOf(buff[i]);
  584.                     buff[i] = ' ';
  585.                 }
  586.             }
  587.  
  588.         }
  589.         return rozdeleniedatumov;
  590.     }
  591.  
  592.     private static boolean isPredstavenstvo(Elements rows) {
  593.         Element row = rows.get(0);
  594.         Pattern p = Pattern.compile("predstavenstvo");
  595.         Matcher m = p.matcher(row.toString());
  596.         return m.find();
  597.     }
  598.  
  599.     private static Date editDate(String date) throws ParseException {
  600.         SimpleDateFormat format = new SimpleDateFormat("dd.MM.yyyy");
  601.         java.util.Date parsed = format.parse(date.trim());
  602.  
  603.         return new Date(parsed.getTime());
  604.     }
  605.  
  606.     private static ArrayList<String> rozdelMenoATituly(String meno) {
  607.         ArrayList<String> rozdelene = new ArrayList<>();
  608.  
  609.         //0 - pred
  610.         //1 - meno
  611.         //2 - priezvisko
  612.         //3 - titulza
  613.  
  614.         char[] buff = meno.toCharArray();
  615.         ArrayList<String> pomocnePole = new ArrayList<>();   //pole, kde si rozdelim data medzi '> <'
  616.  
  617.         int pos1 = 0;
  618.         int pos2 = 0;
  619.  
  620.         for (int i = 0; i < buff.length; i++) {
  621.             if (pos1 != 0 && pos2 != 0 && pos1 < pos2) {
  622.                 if (meno.substring(pos1 + 1, pos2).length() > 2) {   //kvoli htmltagom kde su medzeri medzi nimi len
  623.                     pomocnePole.add(meno.substring(pos1 + 1, pos2));
  624.                     pos1 = 0;
  625.                     pos2 = 0;
  626.                 }
  627.             }
  628.  
  629.             if (buff[i] == '>') {
  630.                 pos1 = i;
  631.             }
  632.  
  633.             if (buff[i] == '<') {
  634.                 pos2 = i;
  635.             }
  636.         }
  637.  
  638.  
  639.         switch (pomocnePole.size()) {
  640.             case 2: {                    //meno a priezvisko
  641.                 rozdelene.add(" ");
  642.                 rozdelene.add(pomocnePole.get(0));
  643.                 rozdelene.add(pomocnePole.get(1));
  644.                 rozdelene.add(" ");
  645.                 break;
  646.             }
  647.  
  648.             case 3: {                    //meno a priezvisko a 1 titul bud pred alebo za
  649.  
  650.                 if (pomocnePole.get(0).contains(".") || pomocnePole.get(0).contains(",")) {
  651.                     rozdelene.add(pomocnePole.get(0));
  652.                     rozdelene.add(pomocnePole.get(1));
  653.                     rozdelene.add(pomocnePole.get(2));
  654.                     rozdelene.add(" ");
  655.                 } else {
  656.                     rozdelene.add(" ");
  657.                     rozdelene.add(pomocnePole.get(0));
  658.                     rozdelene.add(pomocnePole.get(1));
  659.                     rozdelene.add(pomocnePole.get(2));
  660.                 }
  661.                 break;
  662.  
  663.             }
  664.             case 4: {                    //meno a priezvisko a titul pred aj za
  665.                 rozdelene.add((pomocnePole.get(0)));
  666.                 rozdelene.add(pomocnePole.get(1));
  667.                 rozdelene.add(pomocnePole.get(2));
  668.                 rozdelene.add((pomocnePole.get(3)));
  669.                 break;
  670.             }
  671.             default: {
  672.                 rozdelene.add(" ");
  673.                 rozdelene.add(" ");
  674.                 rozdelene.add(" ");
  675.                 rozdelene.add(" ");
  676.             }
  677.  
  678.         }
  679.         /*System.out.println("_____________________________________________________");
  680.         System.out.println("Titil pred: " + rozdelene.get(0));
  681.         System.out.println("Meno: " + rozdelene.get(1));
  682.         System.out.println("Priezvisko: " + rozdelene.get(2));
  683.         System.out.println("Titul za:" + rozdelene.get(3));
  684.         System.out.println("_____________________________________________________");*/
  685.  
  686.         return rozdelene;
  687.     }
  688.  
  689. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement