为什么会出现此错误?
htmlDoc.Load(pageSource)
上的“路径中的非法字符”pageSource
是HTML页面的字符串变量。我需要将页面源作为字符串而不是文件和URL传递。我该怎么做呢?
Dim ids As New List(Of String)()
Dim pageSource = getHtml(url)
Dim htmlDoc As HtmlDocument = New HtmlDocument()
htmlDoc.OptionFixNestedTags = True
htmlDoc.Load(pageSource)
Dim s As HtmlNodeCollection = htmlDoc.DocumentNode.SelectNodes("//div/@id")
For Each div As HtmlNode In s
ids.Add(div.Id)
Next
最佳答案
使用LoadHtml
代替Load
:
htmlDoc.LoadHtml(pageSource)
See also the source.
关于c# - 传递HTML页面的字符串并使用HtmlAgilityPack进行抓取,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11589469/