/html2print

парсер из HTML в TXT

Primary LanguageHTML

Парсер из HTML table в txt

Постановка задачи

Сделать парсер, который будет на вход получать table с tr и td (файл в htmlформате). Нужна поддержка атрибутов clospan и rowspan. На выходе нужно получить табличку, нарисованную текствовыми символами.

Реализация

Архитектура

Для выполнения задания была выбрана технология Data Driven Testing – это подход к тестированию, при котором тестовые данные хранятся отдельно от скриптов, в документе html. Было написано несколько тестов:

    1. таблица
  • 2-*. таблица с colspan
  • 3-*. таблица с rowspan и colspan - на этом остановился.

Запуск приложения из командной строки

проект выполнен с использованием maven

$ mvn clean install
$ mvn test

(нужен установленный maven и java8)

Результат выполнения junit tests


test1.html
-------------------------
|  Title 1|      2|Ttl 3|
-------------------------
|    12345|     67|89012|
-------------------------
|      123|4567890|    1|
-------------------------
|777888888|      8|  999|
-------------------------

test2-1.html
-----------------
|h445|    h5|h45|
-----------------
|  h1|4654h2| h3|
-----------------
|   1|     2|  3|
-----------------
|   4|         5|
-----------------
|   7|     8|  9|
-----------------

test2-2.html
----------------
|h445|       h5|
----------------
|  h1|4654h2|h3|
----------------
|   1|     2| 3|
----------------
|   4|     5| 5|
----------------
|   7|     8| 9|
----------------

test2-3.html
----------------
|       h445|h5|
----------------
|  h1|4654h2|h3|
----------------
|   1|     2| 3|
----------------
|   4|     5| 4|
----------------
|   7|     8| 9|
----------------

test3-1.html
------------
|h1|  h2|h3|
    --------
|  |h4|h5|
------------
| 1|   2| 3|
------------
| 4|5555| 6|
------------
| 7|   8| 9|
------------

test3-2.html
-----------
|h4|    h5|
    -------
|  |h1|h2|
-----------
| 1|   2|3|
-----------
| 4|5555|6|
-----------
| 7|   8|9|
-----------

test3-3.html
-----------
|h4|    h5|
    -------
|  |h1| h2|
-----------
| 1|12|123|
-----------

##Технологии

  • java se 8
  • maven
  • Jsoup