class_docstr: The concrete implementations of Elements are semantically named for the types of elements we are interested in.
  This defines a very concrete tree structure for html tables that we expect to deal with. I prefer this compared to
  allowing Element to have an arbitrary number of children and dealing with an abstract element tree.
docstr: takes an html table object (from lxml)
docstr_tok: ["takes","an","html","table","object","(","from","lxml",")"]
code: def __init__(self, table):
      """
      takes an html table object (from lxml)
      """
      super(Table, self).__init__(table)
      table_head = table.find("thead")
      self.head = (
          TableHead(table_head, parent=self)
          if table_head is not None
          else None
      )
      table_body = table.find("tbody")
      self.body = TableBody(
          table_body if table_body is not None else table, parent=self
      )
  
imports: from openpyxl.cell import cell
  from openpyxl.styles import Font, Alignment, PatternFill, NamedStyle, Border, Side, Color
  from openpyxl.styles.fills import FILL_SOLID
  from openpyxl.styles.numbers import FORMAT_CURRENCY_USD_SIMPLE, FORMAT_PERCENTAGE
  from openpyxl.styles.colors import BLACK
label_desc: Use image node_id 1 to create a new Table object from inherited base classes: Element with example: obj = Table(table)