Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
刮html源vba_Html_Excel_Vba_Web Scraping - Fatal编程技术网

刮html源vba

刮html源vba,html,excel,vba,web-scraping,Html,Excel,Vba,Web Scraping,我需要使用vba从web上刮取一些信息。这是我的代码摘录。没关系,但是这个站点有两个同名的类。所以我的代码只写最后一个值。我希望: 图纸(“01”).Range(“DW”和number)=source.getAttribute(“数据id”) 只写入在站点上找到的类“sample”的第一个值 我该怎么办? 谢谢 要引用类集合的第一个元素,可以使用Item属性,其索引基于0。因此,您可以用以下行替换每个/下一个的 Sheets("01").Range("DW" & Number) = ht

我需要使用vba从web上刮取一些信息。这是我的代码摘录。没关系,但是这个站点有两个同名的类。所以我的代码只写最后一个值。我希望:

图纸(“01”).Range(“DW”和number)=source.getAttribute(“数据id”)

只写入在站点上找到的类“sample”的第一个值

我该怎么办? 谢谢


要引用类集合的第一个元素,可以使用Item属性,其索引基于0。因此,您可以用以下行替换每个/下一个的

Sheets("01").Range("DW" & Number) = html.getElementsByClassName("sample").Item(0).getAttribute("data-id")

希望这有帮助

使用
querySelector
可以提高效率,它只返回第一个匹配项,而不是整个集合(或节点列表)


您似乎没有显示所有(相关)代码。您有一个
Next number
-语句,但对于
没有匹配的
,或者对于每个
没有匹配的
Sheets("01").Range("DW" & Number) = html.getElementsByClassName("sample").Item(0).getAttribute("data-id")
Sheets("01").Range("DW" & Number) = html.querySelector(".sample").getAttribute("data-id")