1

我想要做的是从加载到 webbrowser 的网页中解析某些文本。更具体地说,这行代码。

<span class="price" id="selecttrainform1_addToCartPrice">$20.00</span>

它位于第 1342 行。如果有帮助,这是它之前的所有代码,位于同一行。

<nobr><input type="image" onclick="return onAddToCartClick('selecttrainform', '1', '');" src="/images/en/avs_addtocart_gray.gif" alt="Add To cart >" border="0" name="_handler=presentation.handler.request.rail.RailSimpleSelectDepartAvailabilityRequestHandler/_xpath=/sessionWorkflow/productWorkflow[@product='Rail']/tripJourneyTariffAvailability/journeyTariffAvailability[1]/binding[1]/journey/segment[1]/_/sessionWorkflow/productWorkflow[@product='Rail']/selectedJourney/@id_=_hy0s6wf8a3gi" /><span class="price" id="selecttrainform1_addToCartPrice">$20.00</span>

我试图用这个价格做的是有一个消息框显示它。我可以从三个不同的网络浏览器中提取三个不同的 msgbox,或者只显示一个来自所有三个的 msgbox。这对我来说没什么大不了的。同样,此代码将仅放置在一个按钮中。当然,如果需要,我可以将信息显示在文本框而不是 msgbox 中。我只是更喜欢一个 msgbox。

我在想我可以使用类似的东西

    If webpageelement3.GetAttribute("id") = "selecttrainform1_addToCartPrice" Then
        MsgBox("the price data here")

但我不确定如何让它显示到消息框中。上面的代码是我用来查找并单击按钮的一部分,只是省略了webpagelement.invokemember("click") 命令。

有谁知道任何有用的资源或链接?我试过通过谷歌搜索,但暂时没有结果。

这是通过 vb.net 关闭的。

4

1 回答 1

0

如果以某种方式需要网络浏览器进行视觉反馈:

Dim price As String = WebBrowser1.Document.GetElementById("selecttrainform1_addToCartPrice").InnerText
MessageBox.Show(price)

但是,如果它们只是下载网页的一种方式,那么我建议删除它们并改用 HtmlAgilityPack 或 CSQuery 之类的东西

于 2012-11-30T06:21:02.550 回答