예제 #1
0
        private async Task <string> GetHtmlAsync()
        {
            List <string> listOfLinks;
            await Task.Run(async() =>
            {
                foreach (string page in PagesFromWhichDownloadHtmlCodeList)
                {
                    string trimmedPage = page.Trim();
                    string folderName  = MakeProperFileNameFromUrlWithEnding(trimmedPage, "_kody_html");
                    string path        = CreateDirectory(HtmlFilePath, folderName);
                    Crawler.GetHtmlCodeFromPageAndSaveToFileAsync(trimmedPage, path + folderName + ".html");
                    listOfLinks = await Crawler.FindLinksInPageAsync(trimmedPage);
                    Parallel.ForEach(listOfLinks, (link) =>
                    {
                        string element  = Regex.Replace(link, "///+", "//");
                        string filename = MakeProperFileNameFromUrlWithEnding(element, ".html");
                        Crawler.GetHtmlCodeFromPageAndSaveToFileAsync(element, path + filename);
                    });
                }
            });

            return("Pobieranie ukończone");
        }