从站点地图中删除节点 xml

delete a node from sitemap xml

我的站点地图格式如下。 我想删除一个完整的节点 我找到位置。 例如:

其中节点 <loc> 的值为 http://www.my.com/en/flight1。 我想删除 <url> 节点和他的 child 我要删除 loclastmodprioritychangefreq

<url>
<loc>http://www.my.com/en/flight1
</loc>
<lastmod>2015-03-05</lastmod>
<priority>0.5</priority>
<changefreq>never</changefreq>
</url>


<url>
<loc>
http://www.my.com/en/flight2
</loc>
<lastmod>2015-03-05</lastmod>
<priority>0.5</priority>
<changefreq>never</changefreq>
</url>


<url>
<loc>
http://www.my.com/en/flight3
</loc>
<lastmod>2015-03-05</lastmod>
<priority>0.5</priority>
<changefreq>never</changefreq>
</url>

如果您使用的是 C#,则应使用 System.xml.linq (XDocument)

您可以像这样删除一个节点:

XDocument.Load(/*URI*/);

var elements = document.Root.Elements().Where(e => e.Element("loc") != null && e.Element("loc").Value == "http://www.my.com/en/flight1");
foreach (var url in elements)
{
    url.Remove();
}