VBA和IE8 - 输入值和搜索

时间:2016-09-02 02:02:05

标签: excel-vba web-scraping internet-explorer-8 vba excel

我有一个基于Intranet的网站,我想输入SKU并使用VBA和IE8扫描出现在Excel工作表中的数据。目前正在等待Access许可批准和批准以获得对我们的IBM as400服务器的访问权限。 IE8不支持getElementsByName,搜索栏没有ID,因此我在网上找到的大多数示例都不相关。

Sub scraper()

Dim item As Long

item = "10011" 'this will eventually be placed in a loop for multiple searches

Set objIE = CreateObject("InternetExplorer.Application")
  objIE.Visible = True
' navigate and download the web page
  objIE.Navigate "http://**********.aspx"
Do While objIE.ReadyState <> 4 Or objIE.Busy
    DoEvents
Loop

objIE.document.getElementsByName("input").Value = item


End Sub

这是被检查元素树的照片。如您所见,只有一个名称(输入)和类(st1),没有ID。如何将搜索数据输入此区域?我坚持使用IE8,虽然我也可以访问Chrome ...

capture

1 个答案:

答案 0 :(得分:0)

objIE.document.getElementsByName("input").Value = item更改为objIE.document.getElementsByTagName("input")(0).Value = item最终解决了此问题。

IE8支持

getElementsByTagName。