def METHOD_NAME(self, page):
    figures = (tuple(text.extract_iter(page, "<figure>", "</figure>")) or
               tuple(text.extract_iter(page, "<img", ">")))
    num_zeroes = len(str(len(figures)))
    num = 0
    result = []
    for figure in figures:
        url, pos = text.extract(figure, 'src="', '"')
        if url.startswith("/embed/"):
            continue
        elif url.startswith("/"):
            url = self.root + url
        caption, pos = text.extract(figure, "<figcaption>", "<", pos)
        num += 1
        result.append((url, {
            "url"          : url,
            "caption"      : text.unescape(caption) if caption else "",
            "num"          : num,
            "num_formatted": str(num).zfill(num_zeroes),
        }))
    return result