我使用以下代码将字符串解析为DOM:
var doc new DOMParser().parseFromString(string, 'text/xml');
string只是在哪里<!DOCTYPE html><html><head></head><body>content</body></html>.
typeof doc给了我object.如果我这样做,doc.querySelector('body')我会得到一个DOM对象.但是,如果我尝试访问任何属性,就像你通常可以,它给了我undefined:
doc.querySelector('body').innerHTML; // undefined
其他属性也是如此,例如id.另一方面,属性检索很顺利doc.querySelector('body').getAttribute('id');.
是否有魔术功能可以访问这些属性?
我想从互联网下载的html页面中提取几个链接,我认为使用linq到XML对我的情况来说是一个很好的解决方案.
我的问题是我无法从HTML创建XmlDocument,使用Load(字符串url)不起作用所以我使用以下命令将html下载到字符串:
public static string readHTML(string url)
    {
        HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
        HttpWebResponse res = (HttpWebResponse)req.GetResponse();
        StreamReader sr = new StreamReader(res.GetResponseStream());
        string html = sr.ReadToEnd();
        sr.Close();
        return html;
    }
当我尝试使用LoadXml(字符串xml)加载该字符串时,我得到了异常
'--' is an unexpected token. The expected token is '>'
我应该采用什么方式将html文件读取为可解析的XML