C# Html Agility Pack正在截断一个元标记';s值

C# Html Agility Pack正在截断一个元标记';s值,c#,html-parsing,html-agility-pack,C#,Html Parsing,Html Agility Pack,我正在使用Html Agility Pack解析一些Html,但是我遇到了一个格式不好的元标记的问题 给定此元标记: "<meta name=\"productattributes\" value=\"shop: Baby|category: Category|category: Babies\" r\"us=\"\" exclusives|family:=\"\" strollers|name:=\"\" baby=\"\" trend=\"\" expedition=\"\" elx=

我正在使用Html Agility Pack解析一些Html,但是我遇到了一个格式不好的元标记的问题

给定此元标记:

"<meta name=\"productattributes\" value=\"shop: Baby|category: Category|category: Babies\" r\"us=\"\" exclusives|family:=\"\" strollers|name:=\"\" baby=\"\" trend=\"\" expedition=\"\" elx=\"\" travel=\"\" system=\"\" stroller=\"\" -=\"\" everglade|price:=\"\" 239.99\"=\"\">" 
结果productAttributesStr的值在\“r”处截断:

“店铺:婴儿|类别:类别|类别:婴儿”


我做错了什么?

html实际上是无效的。您复制的字符串(未添加“C”)为:


您正在使用
作为用相同字符分隔的属性值内的数据。单击的第一个将结束属性值。您需要使用实体来表示它们:

它不是我的html,所以我需要找到一种解决方法来解析它。html来自toysrus.com,它不是我的html,所以我需要找到一个解决方法来解析它。html来自toysrus.com。在尝试解析之前,您必须编写一个自定义修复例程来更正错误。(或让供应商在源头进行修复)。
HtmlNode productAttributes = hap.DocumentNode.SelectSingleNode("//meta[@name='productattributes']");

var productAttributesStr = productAttributes.GetAttributeValue("value", "");
<meta name="productattributes" value="shop: Baby|category: Category|category: Babies" r"us="" exclusives|f...