@classmethod
def find_all(cls, tag_name=None, attrs={}, recursive=True, text=None, limit
    =None, **kwargs):
    """
        Extracts a list of Tag objects that match the given
        criteria.  You can specify the name of the Tag and any
        attributes you want the Tag to have.

        The value of a key-value pair in the 'attrs' map can be a
        string, a list of strings, a regular expression object, or a
        callable that takes a string and returns whether or not the
        string matches for some custom definition of 'matches'. The
        same is true of the tag name.
        """
    cls.__soup()
    return cls.__params['soup'].find_all(tag_name, attrs, recursive, text,
        limit, **kwargs)
