public bool TryExtractSha256ChecksumFromPage(string sourceUrl, string directDownloadUrl, out string sha256Checksum)
        {
            SimpleWebScraper simpleWebScraper = new SimpleWebScraper();
            var baseDownloadPage = simpleWebScraper.GetWebsiteDocument(sourceUrl);

            if (simpleWebScraper.TryGetSha256FromHtml(baseDownloadPage, directDownloadUrl, out string result))
            {
                sha256Checksum = result;
                return(true);
            }
            else
            {
                sha256Checksum = string.Empty;
                return(false);
            }
        }
        public async Task <string> TryFindChecksumWithCrawler(string sourceUrl, string directDownloadUrl)
        {
            WebCrawler       webCrawler       = new WebCrawler(sourceUrl);
            SimpleWebScraper simpleWebScraper = new SimpleWebScraper();

            var crawledPages = await webCrawler.Crawl(CRAWLER_BASE_DEPTH);

            foreach (var page in crawledPages)
            {
                if (simpleWebScraper.TryGetSha256FromHtml(page, directDownloadUrl, out string result))
                {
                    return(result);
                }
            }

            return(string.Empty);
        }