首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取元素后拉取href

获取元素后拉取href
EN

Stack Overflow用户
提问于 2021-07-05 23:39:28
回答 1查看 42关注 0票数 0

希望这是一个非常容易的问题,但这似乎是我在网页抓取时经常遇到的问题。

我正在从一个包含许多化学品档案的数据库中进行网络抓取,其中一些档案有单独的毒理学信息部分,有些则没有。在这个例子中,提供的url是固定的,因为我知道这确实包含一个到毒物信息的链接,因此将"Sub“的url从。

我希望检查网站是否有这个信息通过拉这个ur,如果没有运行条件代码,给出一条消息,说没有毒素信息等。

检查页面:

<li id="SubNav7_1" class="active"> <a href="/registration-dossier/-/registered-dossier/15460/7/1"> Toxicological Summary</a> </li>

我已经正确导航到SubNav7,但在尝试获取url时遇到运行时错误13。

代码语言:javascript
复制
Public Sub GetContents()
    
'Start ECHA Search via XML HTTP Request
    
    Dim XMLReq As New MSXML2.XMLHTTP60
    Dim HTMLDoc As New MSHTML.HTMLDocument
    
    XMLReq.Open "Get", "https://echa.europa.eu/registration-dossier/-/registered-dossier/15460", False
    XMLReq.send
     
    HTMLDoc.body.innerHTML = XMLReq.responseText
    
'GetLink
    
    Set link = HTMLDoc.getElementById("SubNav7_1").getAttribute("href")
    
    Debug.Print link


End Sub

预期输出为https://echa.europa.eu/registration-dossier/-/registered-dossier/15460/7/1

如果有人能指出如何在本质上获得SubNav7_1下的a标记属性,那就太好了

EN

回答 1

Stack Overflow用户

发布于 2021-07-06 00:10:04

当您打印整个网站时,您会注意到您要查找的href属性不在SubNav7_1元素中。它在它内部的一个元素中:

代码语言:javascript
复制
<li id="SubNav7_1"> 
<a href="/registration-dossier/-/registered-dossier/15460/7/1"> Toxicological Summary</a> 
</li>

因此,访问"li“元素的"href”属性时会出现错误,因为这样的属性不存在。

如果你想知道,下面是我如何修改你的代码,看看你正在抓取的站点中发生了什么(以及我是如何得到上面所示的HTML的):

代码语言:javascript
复制
'Start ECHA Search via XML HTTP Request 
Dim XMLReq As New MSXML2.XMLHTTP60
Dim HTMLDoc As New MSHTML.HTMLDocument

XMLReq.Open "Get", "https://echa.europa.eu/registration-dossier/-/registered-dossier/15460", False
XMLReq.send
 
HTMLDoc.body.innerHTML = XMLReq.responseText

'GetLink
Dim link As String
Debug.Print Mid(HTMLDoc.body.outerHTML, InStr(1, HTMLDoc.body.outerHTML, "SubNav7_1"), 150)
link = HTMLDoc.getElementById("SubNav7_1").getAttribute("href")
Debug.Print link
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68258757

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档