0

我编写了一个后图像 HTA,它在 XP 图像加载到计算机后启动。HTA 从用户那里收集信息(即主要用户名、部门等)并在自定义键下更新注册表。管理层询问我是否可以从供应商的网站(在本例中为联想)获取计算机的保修信息(特别是保修结束日期)并使用此信息更新注册表。Lenovo 允许使用计算机类型和序列号进行匿名查找,并返回显示保修信息的页面。有没有办法使用 vbscript(或者可能是 javascript?)来解析返回的页面以获取我正在寻找的数据?

在此先感谢,吉尔

4

2 回答 2

2

使用 HTML 解析器可能是一种更可靠的方法,但使用 VBScript 很容易通过 OLE 自动化编写 Internet Explorer 脚本。

Dim ie, frm

Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
ie.Navigate "http://www-307.ibm.com/pc/support/site.wss/" & _
    "document.do?lndocid=LOOK-WARNTY#sw"
Do Until ie.ReadyState = 4 '' READYSTATE_COMPLETE
    WScript.Sleep 100
Loop

Set frm = ie.Document.Forms.warrantyLookup
frm.type.Value = "2644"
frm.serial.Value = "23AB123"
frm.Submit

Do Until ie.Document.ReadyState = "complete"
    WScript.Sleep 100
Loop

'' Locate the information you want to scrape from the
'' ie.Document DOM at this point

ie.Quit
于 2010-01-14T23:07:43.137 回答
0

您可以相当容易地抓取返回的页面,真正需要的只是一个 HTML 解析器,然后知道您想要的信息在返回的页面中的位置。我不知道任何 VBScript HTML 解析器,但我确信它们存在。但是,如果您找不到,您可以从本地运行的代码中调用外部程序,这样您就可以用任意数量的语言编写页面抓取实用程序(或使用某种 grep 实用程序),这可能会做您想做的事正在找。

于 2010-01-14T21:23:34.207 回答