HTML 페이지의 문자열을 전달하고 HtmlAgilityPack으로 긁습니다.

c# html-agility-pack vb.net

문제

이 오류가 발생하는 이유는 무엇입니까?

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

수락 된 답변

Load 대신 LoadHtml 사용 :

htmlDoc.LoadHtml(pageSource)

소스도 참조하십시오.



아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.