gpt4 book ai didi

Excel VBA 宏来抓取网页。无法编码以单击 html 按钮

转载 作者:行者123 更新时间:2023-12-04 20:59:15 24 4
gpt4 key购买 nike

我有一个简短的 excel 宏,旨在:
1) 打开 Internet Explorer 并导航到“http://www.puco.ohio.gov/pucogis/address/search.cfm
2) 在该网站上填写表格,使用 excel 工作簿中的数据
3) 点击按钮提交表单
4)从网站上抓取一些内部文本并将其放在工作簿的一个单元格中
5) 关闭 Internet Explorer

我无法让第 3 步工作。也就是说,我无法让点击/提交功能与该网站一起使用。单击该按钮时,网站会填充特定于在表单中输入的信息的信息。代码中的其他所有内容都在工作。我已经寻找答案并尝试了提交诗句点击方法,但没有成功。

谢谢你的帮助。

下面的代码:

Private Sub SiteData()

Dim ie As Object
Dim utility As Variant
Dim HTMLButton

Set ie = CreateObject("InternetExplorer.Application")
ie.Navigate "http://www.puco.ohio.gov/pucogis/address/search.cfm"
ie.Visible = True

While ie.Busy
DoEvents
Wend

ie.Document.all("address").Value = ThisWorkbook.Sheets("Site Info").Range("D14")

While ie.Busy
DoEvents
Wend

Set HTMLButton = ie.Document.getElementsByTagName("input")(1)
HTMLButton.Click

While ie.Busy
DoEvents
Wend

Set utility = ie.Document.getElementById("supName")
ThisWorkbook.Sheets("Site Info").Range("D50") = utility.innerText

ie.Quit
Set ie = Nothing

End Sub

最佳答案

试试这个我从 this answer 找到的解决方案到 similar question .该答案未被接受,但我已经用您的代码对此进行了测试,并且似乎可以正常工作。

Private Sub SiteData()

Dim ie As Object
Dim utility As Variant
Dim HTMLButton

Set ie = CreateObject("InternetExplorer.Application")
ie.Navigate "http://www.puco.ohio.gov/pucogis/address/search.cfm"
ie.Visible = True

While ie.Busy
DoEvents
Wend

ie.Document.all("address").Value = ThisWorkbook.Sheets("Site Info").Range("D14")

While ie.Busy
DoEvents
Wend

Call ie.Document.parentWindow.execScript("codeAddress()")


While ie.Busy
DoEvents
Wend

Set utility = ie.Document.getElementById("supName")
ThisWorkbook.Sheets("Site Info").Range("D50") = utility.innerText

ie.Quit
Set ie = Nothing

End Sub

如果您不知道或无法合理预期函数调用 codeAddress() , 然后你可以尝试这样的方法来从按钮的 onclick 中派生它属性(property):
Dim fn$
fn = HTMLButton.onclick
fn = Mid(fn, InStr(fn, "{"))
fn = Trim(Replace(Replace(Replace(fn, "{", vbNullString), "}", vbNullString), vbLf, vbNullString))
Call ie.Document.parentWindow.execScript(fn)

关于Excel VBA 宏来抓取网页。无法编码以单击 html 按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39877813/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com