#!/usr/bin/env python

import sys
import argparse

from hocr.searching import hocr_load_lookup_table, hocr_lookup_page_by_dat
from hocr.util import open_if_required
from hocr.text import hocr_page_text

def process_file(filepath, tablepath):
    lookup_table = hocr_load_lookup_table(tablepath)
    fp = open_if_required(filepath)

    for dat in lookup_table:
        page = hocr_lookup_page_by_dat(fp, dat)
        text = hocr_page_text(page)
        sys.stdout.write(text)


if __name__ == '__main__':
    parser = argparse.ArgumentParser(description='hOCR lookup table reconstructor')
    parser.add_argument('-f', '--infile', help='Filename to read',
                        type=str, default=None)
    parser.add_argument('-t', '--table', help='Table to use',
                        type=str, default=None)
    args = parser.parse_args()

    process_file(args.infile, args.table)
