我在 Visual Basic 2010 Express 中有一个使用 IHTMLDocument 对象解析网页的项目。这是我用来检索网页的函数:
Private Function GetHTML(ByVal url As String)
Dim htmldoc As New HTMLDocument()
Dim ihtml2 As IHTMLDocument2
Dim ihtml3 As IHTMLDocument3
Dim iPersistStream As IPersistStreamInit
iPersistStream = DirectCast(htmldoc, IPersistStreamInit)
iPersistStream.InitNew()
ihtml2 = htmldoc.createDocumentFromUrl(url, vbNullString)
Do Until ihtml2.readyState = "complete"
'required for htmlresult.readyState to transition from "loading" to "complete"
System.Windows.Forms.Application.DoEvents()
Loop
ihtml3 = DirectCast(ihtml2, IHTMLDocument3)
Return ihtml3
End Function
我基本上是在用这个函数做这样的事情:
ihtml = GetHTML("www.blah.com?getvar1=x&getvar2=y")
ihtml.getElementsByTagName("A")
ihtml.getElementById("myel")
etc, etc...
我试图弄清楚当我检索 HTML 文档时如何在 URL 字符串之外包含 POST 变量。我的意思是我希望能够做到这样的事情:
ihtml = GetHTML("www.blah.com?getvar1=x&getvar2=y",["postvar1=a","postvar2=b"])
所以我想修改我现有的 GetHTML 函数,以便允许我在可能的情况下包含 post 变量,如果不是,我想知道是否有其他方法可以做到这一点。感谢任何能提供帮助的人。