2017-12-03 44 views
0

我有一个从网站获取URL麻烦获取网址: https://searchbzp.uzp.gov.pl/Search.aspx
在这个网站上有一个表。
文本'Zobacz'是一个超链接,从这个地方我想要得到的URL。从网站

我可以在这个URL中使用下面的代码单击,然后浏览器试图打开新的标签页: IE.Document.getelementbyID("ctl00_ContentPlaceHolder1_ASPxGridView1_DXCBtn0").Click

但我只想得到这个URL(无需打开新的标签页)。 我是想这样的事情,但它不工作:

Dim a 
a = IE.Document.parentWindow.ExecScript("javascript:ctl00_ContentPlaceHolder1_ASPxGridView1_DXCBtn0", "JavaScript") 
MsgBox a 
a = IE.Document.parentWindow.ExecScript(IE.Document.getElementById("ctl00_ContentPlaceHolder1_ASPxGridView1_DXCBtn0").href, "JavaScript") 
MsgBox a 

任何人可以帮助我呢?

回答

0

见我的回答类似的问题昨天:http://stackoverflow.com/a/47593832/8112776

如果你只需要得到一个值,即始终位于同一个地方,那么就没有必要IE对象和所有。


这里:

Function GetHTML(url As String) As String 
    With CreateObject("MSXML2.XMLHTTP") 
     .Open "GET", url, False 
     .Send 
     GetHTML = .ResponseText 
    End With 
End Function 


Sub getData() 
    Const url = "https://searchbzp.uzp.gov.pl/Search.aspx" 
    Const strStart = "ctl00_ContentPlaceHolder1_ASPxGridView1_DXCBtn0""><span>" 
    Const strStop = "</span>" 

    Dim html As String, pStart As Long, pStop As Long 
    html = GetHTML(url) 
    pStart = InStr(1, html, strStart) + Len(strStart) 
    pStop = InStr(pStart, html, strStop) 
    MsgBox Mid(html, pStart, pStop - pStart) 
End Sub 
+0

THX ashleedawg,但如果我用你的代码,我得值“显示地图”不是直接的超链接。 HTML的 部分: <类= “dxbButton_Aqua dxgvCommandColumnItem_Aqua dxgv__cci dxbButtonSys” 数据ARGS = “[[ '的CustomButton', 'btnShow',0],1]”​​ ID = “ctl00_ContentPlaceHolder1_ASPxGridView1_DXCBtn0” HREF =“JavaScript的: ;” > < span>显示地图< /span> < /a> 当我使用代码:IE.Document.getelementbyID( “ctl00_ContentPlaceHolder1_ASPxGridView1_DXCBtn0”)点击 浏览器中打开网站: https://bzp.uzp.gov.pl/ZP403/Preview/848ff3f8-1869 -4157-b726-0b6e191fd1d3 问题是如何将此值作为URL? – MuzaMeduza

+0

好吧,对不起,我误解了这个问题。该链接不包含URL,它运行JavaScript函数,据我所知,该站点有意试图隐藏链接。该函数打开https://bzp.uzp.gov.pl/ZP403/Preview/581ee816-7a25-4a1a-ad3c-a910f497ef78页面,但该链接并未出现在源代码中的任何位置,因此它可能拼凑在一起,部分随机。有足够的时间,有人可能会想出一种方法来提取链接,但这超出了我对免费工作的承诺。 :-)对不起,祝你好运! – ashleedawg

+0

好的。非常感谢ashleedawg的帮助!:) – MuzaMeduza