'Get row that contains specified text in specified column.
In case exact_match is set to True, text contained in row must equal
searched text, otherwise occurrence of searched text in the column
text will result in row match.'

def get_row(self, column_name, text, exact_match=True):

    def get_text(element):
        text = element.get_attribute('data-selenium')
        return (text or element.text)
    for row in self.rows:
        try:
            cell = row.cells[column_name]
            if (exact_match and (text == get_text(cell))):
                return row
            if ((not exact_match) and (text in get_text(cell))):
                return row
        except exceptions.StaleElementReferenceException:
            pass
    return None
