// @Throws public static FindResult Find(string PageUrl) { using (var client = WebClientNoCache()) { var mainPageSource = client.DownloadString(PageUrl); var urls = GetUrls(mainPageSource); foreach (var i in urls) { try { var src = client.DownloadString(i); if (src.Length >= sourceCodeLenCriteria * 10) { return(new FindResult() { Url = i, Source = src }); } if (src.Length >= sourceCodeLenCriteria) { return(LastestDataSetFinder.Find(i)); } } catch { } } throw new WindNotAvailException(); } }
// Can throw exception. public void DownloadGribFile(string filePath) { var x = LastestDataSetFinder.Find(); webPageUrl = x.Url; webPageSrc = x.Source; try { using (var client = new WebClient()) { var dir = new FileInfo(filePath).DirectoryName; Directory.CreateDirectory(dir); client.DownloadFile(FileUrl(), filePath); } } catch (Exception ex) { throw new DownloadGribFileException("", ex); } }