code: def convert(input_file_name, **kwargs):
      
      delimiter = kwargs["delimiter"] or ","
      quotechar = kwargs["quotechar"] or "|"
  
      if six.PY2:
          delimiter = delimiter.encode("utf-8")
          quotechar = quotechar.encode("utf-8")
  
      # Read CSV and form a header and rows list
      with open(input_file_name, "rb") as input_file:
          reader = csv.reader(input_file,
                              encoding="utf-8",
                              delimiter=delimiter,
                              quotechar=quotechar)
  
          csv_headers = []
          if not kwargs.get("no_header"):
              # Read header from first line
              csv_headers = next(reader)
  
          csv_rows = [row for row in reader if row]
  
          # Set default column name if header is not present
          if not csv_headers and len(csv_rows) > 0:
              end = len(csv_rows[0]) + 1
              csv_headers = ["Column {}".format(n) for n in range(1, end)]
  
      # Render csv to HTML
      html = render_template(csv_headers, csv_rows, **kwargs)
  
      # Freeze all JS files in template
      return freeze_js(html)
docs: Convert CSV file to HTML table