gpt4 book ai didi

.net - Html Agility Pack 不匹配 标签

转载 作者:行者123 更新时间:2023-11-28 00:27:37 25 4
gpt4 key购买 nike

代码:(使用 HTML Agility Pack)

 Dim moHtmlParser As HtmlDocument = New HtmlDocument           
moHtmlParser.LoadHtml(htmlString)

Dim maStyles As New List(Of String)
Dim moStyleNodes As HtmlNodeCollection = moHtmlParser.DocumentNode.SelectNodes("//link")

HTML:

<head runat="server">
<script src="Scripts/JScript1.js" type="text/javascript" ></script>

<link href="Stylesheets/StyleSheet1.css" rel="Stylesheet" type="text/css" />

<link href="Stylesheets/StyleSheet2.css" rel="Stylesheet" type="text/css" />

<link href="Stylesheets/StyleSheet3.css" rel="Stylesheet" type="text/css" />


<title>Untitled Page</title>

没有匹配项? moStyleMatches 始终为 Nothing。显示的 Html 来自 Head,物有所值。我可以匹配其中的其他标签(脚本、标题)没问题。

更新:

即使在删除“链接”标签的 ElementsFlag 之后,它也不会拾取标签。

我用这段代码解决了这个问题:

Dim moStyleNodes As HtmlNodeCollection = moHtmlParser.DocumentNode.SelectNodes("//*[@rel]")

然后我在使用节点之前确保“rel”是“stylesheet”。

目前有效,但没有解释为什么它一开始就不起作用。

最佳答案

即使在删除“链接”标签的 ElementsFlag 之后,它也不会拾取标签。

我用这段代码解决了这个问题:

Dim moStyleNodes As HtmlNodeCollection = moHtmlParser.DocumentNode.SelectNodes("//*[@rel]")

然后我在使用节点之前确保“rel”是“stylesheet”。

目前有效,但没有解释为什么它一开始就不起作用。

关于.net - Html Agility Pack 不匹配 <link> 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4707988/

25 4 0