如何使用HtmlAgilityPack向<head>添加<link>或<meta>标签?

5

http://htmlagilitypack.codeplex.com下载文档的链接返回错误,我无法通过尝试代码解决这个问题。

我正在尝试将各种标签插入到从HTML字符串加载的HtmlDocument的<head>部分。我遇到的最初问题在这里描述。

有人能给我一个实现这个的想法吗?谢谢


1
文档下载链接对我来说正常工作。 - adrianbanks
可能是我们的防火墙问题。我会尝试使用不同的连接。谢谢。 - DaveDev
我从另一个连接下载了它,现在.chm文件中的每个页面都显示“无法显示该页面”!! - DaveDev
2
在Windows中右键单击文件,查看其属性,然后点击“解除锁定”按钮。 - adrianbanks
1个回答

15

或许有点晚了 :-) 假设我有这个 test.htm HTML文件:

<html>
<head>
    <title>Hello World!</title>
</head>
<body>
    Hello World
</body>
</html>

以下是如何在HEAD元素下面添加一个LINK元素的方法。注意,语义与System.Xml非常接近,这是有意为之的:

HtmlDocument doc = new HtmlDocument();
doc.Load("test.htm");

HtmlNode head = doc.DocumentNode.SelectSingleNode("/html/head");

HtmlNode link = doc.CreateElement("link");
head.AppendChild(link);
link.SetAttributeValue("rel", "shortcut icon");
link.SetAttributeValue("href", "http://www.mysite.com/favicon.ico");
结果将会是:
<html>
<head>
    <title>Hello World!</title>
<link rel="shortcut icon" href="http://www.mysite.com/favicon.ico"></head>
<body>
    Hello World
</body>
</html>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接