class_docstr: HTML to DataFrame parser that uses BeautifulSoup under the hood.
  
  See Also
  --------
  pandas.io.html._HtmlFrameParser
  pandas.io.html._LxmlFrameParser
  
  Notes
  -----
  Documentation strings for this class are in the base class
  :class:`pandas.io.html._HtmlFrameParser`.
class_docstr_tok: ["HTML","to","DataFrame","parser","that","uses","BeautifulSoup","under","the","hood",".","See","Also","--","--","--","--","pandas.io.html._HtmlFrameParser","pandas.io.html._LxmlFrameParser","Notes","--","--","-","Documentation","strings","for","this","class","are","in","the","base","class",":","class",":","`","pandas.io.html._HtmlFrameParser","`","."]
code: def _parse_tables(self, doc, match, attrs):
      element_name = self._strainer.name
      tables = doc.find_all(element_name, attrs=attrs)
  
      if not tables:
          raise ValueError("No tables found")
  
      result = []
      unique_tables = set()
      tables = self._handle_hidden_tables(tables, "attrs")
  
      for table in tables:
          if self.displayed_only:
              for elem in table.find_all(
                  style=re.compile(r"display:\s*none")
              ):
                  elem.decompose()
  
          if (
              table not in unique_tables
              and table.find(string=match) is not None
          ):
              result.append(table)
          unique_tables.add(table)
  
      if not result:
          raise ValueError(
              f"No tables found matching pattern {repr(match.pattern)}"
          )
      return result
  
imports: from __future__ import annotations
  from collections import abc
  import numbers
  import re
  from typing import TYPE_CHECKING, Iterable, Literal, Pattern, Sequence, cast
  from pandas._libs import lib
  from pandas._typing import BaseBuffer, DtypeBackend, FilePath, ReadBuffer
  from pandas.compat._optional import import_optional_dependency
  from pandas.errors import AbstractMethodError, EmptyDataError
  from pandas.util._validators import check_dtype_backend
  from pandas.core.dtypes.common import is_list_like
  from pandas import isna
  from pandas.core.indexes.base import Index
  from pandas.core.indexes.multi import MultiIndex
  from pandas.core.series import Series
  from pandas.io.common import file_exists, get_handle, is_url, stringify_path, urlopen, validate_header_arg
  from pandas.io.formats.printing import pprint_thing
  from pandas.io.parsers import TextParser
label_desc: Use image node_id 2 for calling the _BeautifulSoupHtml5LibFrameParser obj's underlying member method code with example usage: obj._parse_tables(doc, match, attrs) and returns: result