本文整理汇总了C#中HtmlAgilityPack.Any方法的典型用法代码示例。如果您正苦于以下问题:C# HtmlAgilityPack.Any方法的具体用法?C# HtmlAgilityPack.Any怎么用?C# HtmlAgilityPack.Any使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HtmlAgilityPack
的用法示例。
在下文中一共展示了HtmlAgilityPack.Any方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SetAbsoluteLinks
/// <summary>
///
/// </summary>
/// <param name="contentHtml"></param>
/// <param name="divertUri">Uri for WebReader redirection e.g. http://arghya.com/webreader/read?uri=</param>
/// <param name="directUri">Uri for direct link to original resource e.g. http://www.facebook.com</param>
/// <returns></returns>
public static string SetAbsoluteLinks(string contentHtml, string divertUri, string directUri)
{
HtmlDocument htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(contentHtml);
var allLinks = htmlDoc.DocumentNode.SelectNodes("//*[@href or @src or @action]");
if (allLinks == null)
return contentHtml;
foreach (HtmlNode link in allLinks)
{
HtmlAttribute att = GetAttributeForLink(link);
if (att != null)
{
string href = att.Value; //TODO: re-evaluate "link"
var tagsWithOriginalLink = new[] { "img", "link", "audio", "video" };
if (tagsWithOriginalLink.Any(tag => link.OriginalName.ToLower() == tag)) //we are not good at rendering binary. yet.
{
if (!IsAbsoluteUri(href))
{
//uri = new Uri(new Uri(baseUri), uri);
att.Value = directUri + href; //uri.ToString();
}
continue;
}
// ignore javascript on buttons using a tags
if (href.StartsWith("javascript", StringComparison.InvariantCultureIgnoreCase))
continue;
//if (!IsAbsoluteUri(href))
//{
// //uri = new Uri(new Uri(baseUri), uri);
// att.Value = divertUri + href; //uri.ToString(); //TODO: check fix
//}
att.Value = IsAbsoluteUri(href) ? divertUri + href : divertUri + directUri + href;
}
}
return htmlDoc.DocumentNode.OuterHtml;
}