Пример #1
0
		protected List <ImageItem> ScrapeImageItems (HtmlNodeCollection nodes, Uri host)
		{
			return nodes.AsParallel ()
				.Select (node => new ImageItem (node.GetAttributeValue ("src", null), node.InnerText))
				.Where (item => Uri.IsWellFormedUriString (item.Src, UriKind.RelativeOrAbsolute))
				.Where (item => !options.IgnoreOutsideReferences || (Uri.IsWellFormedUriString (item.Src, UriKind.Absolute) && (new Uri (item.Src).Host == host.Host)))
				.ToList ();
		}
Пример #2
0
		protected List <LinkItem> ScrapeLinkItems (HtmlNodeCollection nodes, Uri host)
		{
			return nodes.AsParallel ()
				.Select (node => new LinkItem (node.GetAttributeValue ("href", null), node.InnerText))
				.Where (item => Uri.IsWellFormedUriString (item.HRef, UriKind.RelativeOrAbsolute))
				.Where (item => !options.IgnoreOutsideReferences || (Uri.IsWellFormedUriString (item.HRef, UriKind.Absolute) && (new Uri (item.HRef).Host == host.Host)))
				.Where (item => !finishedLinkItems.Contains (item) && !queuedLinkItems.Contains (item))
				.ToList ();
		}