【发布时间】:2016-02-13 12:30:45
【问题描述】:
我们正在加载的服务之一是仅使用纯 JSON 对象进行响应。我们正在使用 html 敏捷包加载所有服务,除此之外。其他服务正在呈现一个脚本标签,其中包含一个 JSON,并且它按预期工作。但是当它以非 html 格式出现时,我无法加载这些数据。加载的文档没有元素,Text属性为空字符串,DocumentElement的outer/inner html抛出object null异常,innerText为空或null。
我尝试使用 HttpWebRequest 加载这项服务,它完成了这项工作,但我不想仅仅因为这项服务而混合技术。
是否可以使用 HtmlAgilityPack 加载纯 JSON 数据页面?
【问题讨论】:
-
我不想解析对象,我想得到它。我正在使用 NewtonsoftJson 进行解析,这不是问题。
-
"由于 HTML Agility Pack 不评估 HTML 的任何内容,因此 javascript 代码应该被视为纯文本。使用 SelectSingleNode 方法找到一段 Javascript,然后直接抓取获取内容的 InnerHtml。"
-
纯文本是我所需要的。一次又一次,我不想解析 json,我只需要获取它的纯文本源。 Json在应用程序的其他部分解析,我需要阅读非html源代码。当我到达我的电脑时,我会尝试使用 SelectSingleNode,但是 doc 的 childElements 集合是一个空数组,无论页面源中是否没有元素。对不起,我在手机上写:)
标签: c# html-agility-pack