我一直在尝试创建一个收集etsy商店中所有商品的脚本
var buttons = document.getElementsByName('favorite-container');
for(var i = 0; i <= buttons.length; i++)
buttons[i].click();
&#13;
但是,当我尝试在Chrome中的开发者控制台中运行脚本时,我收到此错误
&#34;未捕获的TypeError:无法读取属性&#39;点击&#39;未定义的 at:3:11&#34;
我认为这应该有用吗?我不知道在我登录的网站上运行Javascript的另一种选择,除了进入selenium等自动化工具
回应第一条评论
<div class="favorite-container" data-listing-id="547704515">
<button type="button" class="btn-fave done" data-source="casanova-shop-featured" aria-pressed="true">
<!--icon font and display:none; elements -->
<span aria-hidden="true" class="icon"></span>
<span class="screen-reader-only default">
Favourite
</span>
<span class="screen-reader-only done remove">
Favourited
</span>
<span class="ie-fix"> </span>
</button>
</div>
&#13;
答案 0 :(得分:2)
您使用错误的方法获取元素,请尝试document.getElementsByClassName
var buttons = document.getElementsByClassName("favorite-container");
for(var i = 0; i < buttons.length; i++) {
buttons[i].click();
}
或者您可以像这样使用JQuery:
$(".favorite-container").each(function(){
$(this).click();
});