docs: def _raise_disambiguation_error(self, page, pageid):
          """ parse and throw a disambiguation error """
          query_params = {
              "prop": "revisions",
              "rvprop": "content",
              "rvparse": "",
              "rvlimit": 1,
          }
          query_params.update(self.__title_query_param())
          request = self.mediawiki.wiki_request(query_params)
          html = request["query"]["pages"][pageid]["revisions"][0]["*"]
  
          lis = BeautifulSoup(html, "html.parser").find_all("li")
          filtered_lis = [
              li for li in lis if "tocsection" not in "".join(li.get("class", list()))
          ]
          may_refer_to = [li.a.get_text() for li in filtered_lis if li.a]
  
          disambiguation = list()
          for lis_item in filtered_lis:
              item = lis_item.find_all("a")
              one_disambiguation = dict()
              one_disambiguation["description"] = lis_item.text
              if item and hasattr(item[0], "title"):
                  one_disambiguation["title"] = item[0]["title"]
              else:
                  # these are non-linked records so double up the text
                  one_disambiguation["title"] = lis_item.text
              disambiguation.append(one_disambiguation)
          raise DisambiguationError(
              getattr(self, "title", page["title"]),
              may_refer_to,
              page["fullurl"],
              disambiguation,
          )