【发布时间】:2011-05-30 21:42:10
【问题描述】:
我正在使用 libxml2.2.7.3 来解析 html 页面,但我很难让它与 HTML 中的 CDATA 一起正常工作。代码如下:
xmlDocPtr doc = htmlReadMemory(data, length, "", NULL, 0);
xmlBufferPtr buffer = xmlBufferCreate();
xmlNodeDump(buffer, doc, doc->children, 0, 0);
printf("%s", (char*)buffer->content);
和 HTML 数据:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><body>
<div>
<script type="text/javascript">
//<![CDATA[
document.write('</div>');
//]]>
</script>
</div>
</body></html>
解析器错误地将引号内的
标签: html xml html-parsing libxml2