繁体   English   中英

通过C#,XmlDocument.LoadXml解析网页

[英]Parsing web pages via C#, XmlDocument.LoadXml

我正在尝试下载网页并对其进行解析。 我需要到达html文档的每个节点。 因此,我使用WebClient下载,效果很好。 然后,我使用以下代码段来解析文档:

 WebClient client = new WebClient();

 Stream data = client.OpenRead("http://web.cs.hacettepe.edu.tr/~bil339/");
 StreamReader reader = new StreamReader(data);
 string xml = reader.ReadToEnd();

 data.Close();
 reader.Close();
 XmlDocument xmlDoc = new XmlDocument();
 xmlDoc.loadXml(xml);

在最后一行,程序等待一段时间,然后崩溃。 它说HTML代码中有错误,这是不希望的,不应该在这里,等等。是否有任何建议可解决此问题? 欢迎使用其他解析HTML代码的技术(当然,在C#中)。

使用HTMLAgilityPack解析HTML。 格式正确的HTML并非XML,因此无法进行解析。 例如,它缺少所有XML文件都需要的<?xml version="1.0" encoding="UTF-8"?>前言。 HTML Agility Pack更宽容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM