diff options
| -rw-r--r-- | bot/cogs/doc/parsing.py | 19 | 
1 files changed, 10 insertions, 9 deletions
diff --git a/bot/cogs/doc/parsing.py b/bot/cogs/doc/parsing.py index 5e5a5be66..368feeb68 100644 --- a/bot/cogs/doc/parsing.py +++ b/bot/cogs/doc/parsing.py @@ -59,17 +59,18 @@ find_next_siblings_until_tag = partial(find_elements_until_tag, func=BeautifulSo  find_previous_siblings_until_tag = partial(find_elements_until_tag, func=BeautifulSoup.find_previous_siblings) -def parse_module_symbol(heading: PageElement) -> Optional[Tuple[None, str]]: -    """Get page content from the headerlink up to a table or a tag with its class in `SEARCH_END_TAG_ATTRS`.""" -    start_tag = heading.find("a", attrs={"class": "headerlink"}) -    if start_tag is None: -        return None +def get_module_description(start_element: PageElement) -> Optional[str]: +    """ +    Get page content to a table or a tag with its class in `SEARCH_END_TAG_ATTRS`. -    description = find_all_children_until_tag(start_tag, _match_end_tag) -    if description is None: -        return None +    A headerlink a tag is attempted to be found to skip repeating the module name in the description, +    if it's found it's used as the tag to search from instead of the `start_element`. +    """ +    header = start_element.find("a", attrs={"class": "headerlink"}) +    start_tag = header.parent if header is not None else start_element +    description = "".join(str(tag) for tag in find_next_siblings_until_tag(start_tag, _match_end_tag)) -    return None, description +    return description  def parse_symbol(heading: PageElement, html: str) -> Tuple[List[str], str]:  |