我正在尝试使用Excel的VBA来自动查找并单击某个链接。问题在于这个链接每天都会改变(或者与每个人一起)。但是,HREF属性的开头始终是相同的,并且它是该页面上具有这种HREF的唯一链接。正在搜索HREF链接正在拉回不正确的链接
我试图不让这个过于复杂,但我想解释一下,所以你理解我的代码,为什么我做了我做的:这个链接打开了一个新的页面,但由于它似乎很难管理多个使用VBA的浏览器实例我决定将代码放在同一个浏览器中,然后使用objIE.back进行循环(如果需要的话)会更好。
我搜索一次的联系是文件中的第59链接,所以我尝试类似的代码:
If link59 <> "*ao/party/popuppartyinfo?party*" Then
hrefvalue = line59
'Gets rid of the JavascriptPopup unnecessary text
trimedhrefvalue = Right(link59, 49)
hrefurlvalue = "https://myjobswebsitehere.com" & trimedhrefvalue
objIE.navigate hrefurlvalue
自身工作的代码,但显然这个环节并不总是在页面根据第59届链接在帐户上。
所以现在我有以下几点:
Application.StatusBar = "Trying to find link..."
Application.Wait (Now() + TimeValue("00:00:05"))
'objIE.document.parentWindow.execScript "execute('RefreshList');"
Set ieLinks = objIE.document.getElementsByTagName("a")
Do Until Progress = True
For Each Links In ieLinks
If Links.innerText = "/ao/party/popuppartyinfo?partyId" Then
'Links.Click
Application.StatusBar = "Found link! Please wait"
Links.Value = hrefvalue
trimedhrefvalue = Right(Links, 49)
hrefurlvalue = "https://myjobswebsitehere.com" & trimedhrefvalue
Progress = True
Exit For
End If
Next Links
Loop
运行此代码时,它总是会打开无关什么我搜索的页面。实际上,“/ ao/party/popuppartyinfo?partyId”中的任何一个字都不会显示在链接中,而是显示错误。
我试图获得该代码的HTML如下:
<a href="javascript:fnOpenWindow('/ao/party/popuppartyinfo?partyId=11111&nav=off')">
整个HREF停留,除了这改变了“partyID”部分的每一个客户端相同。
我的问题是我在做什么错在这里得到这个搜索拉回结果与我指定的innerText没有任何关系?
如果有可能的话,后期实际的URL,而不是'myjobswebsitehere.com'。这将使人们更容易扫描页面并帮助您提供答案。 – FreeMan
@FreeMan不幸的是,我操纵的网站不仅受到用户名和密码的保护,而且还受到私人VPN的保护,所以除非他们坐在我的电脑旁,否则其他人无法看到该网站。我可以在这里发布任何相关的HTML代码,如果需要的话我会更改敏感的客户端信息。任何看起来显然与我的代码找到一个特定的HREF错误? – JGoldz75
不幸的是,我不是你需要看这段代码的专家,我只是发布了评论,希望你能尽快得到答复。 – FreeMan