Фокус в том, что в PDF никакой таблицы нет.
Там тупо строчки по координатам, причем по координатам не центра ячейки, а начала строчки.
И любой перенос, а также смена шрифта (выделение полужирным, например) делит текст на несколько строчек.
Поэтому просто парсить текст не прокатит - несколько строчек развалятся, а пустые ячейки не определятся вовсе, и куда относится следующий после них текст - определить не получится.
На коленке можно попытаться сконвертировать PDF в более текстовый формат - EPS или SVG - и пытаться разобрать его, но это будет хоть и решаемой, но весьма трудоемкой задачей.
Предложенная выше библиотека, видимо, разбирает сам формат и пытается угадать по расположению строчек, как их собрать обратно в таблицу.
Других возможностей и каких-то простых решений можно не искать.
Кроме, разве что, возможности договориться получать там, где это расписание делается, не PDF, а DOCX/ODT, из которого его выгоняют ;)