gpt4 book ai didi

javascript - 使用 JavaScript 从打开的 Web 浏览器中删除元素

转载 作者:太空宇宙 更新时间:2023-11-03 18:35:38 26 4
gpt4 key购买 nike

我试图通过在打开的浏览器上执行 javascript 来删除所有具有“RemoveByMe”类的元素。我之前自己创建了这些元素。

我从 Python 调用该 javascript:Selenium 控制浏览器,并将 javascript 发送到打开的浏览器。但我认为问题在于 javascript 方面,原因在下几行。

执行每个脚本的python代码是:

Browser.execute_script("script here")

到目前为止,我已经尝试过以下 JavaScript 代码:

$('.RemoveByMe').remove();

此错误消息给出以下错误消息:

#WebDriverException: Message: u'$ is not defined' ; Stacktrace: 
at anonymous

这个错误似乎来自python端,所以我测试了更多的javascript代码:

var DocElements = document.getElementsByTagName('RemoveByMe');for(var i = 0; i < DocElements.length; i++){DocElements[i].parentNode.removeChild(DocElements[0]);}

这个不会抛出任何错误(确认 python 端正在工作),但仍然不会删除元素。 (javascript 无法删除它们)

所有经过测试的 javascript 代码都可以在某些网站上运行,但不能 in some others 。这让我认为问题出在网站上,阻止了 javascript 删除元素。 (虽然我可以成功添加它们)

我怎样才能跳过这种预防措施?

最佳答案

第一个显然似乎没有定义 jQuery。

第二个看起来很接近,尽管您需要 document.getElementsByClassName('RemoveByMe') ...而不是 getElementsTagName,因为您想通过 CSS 类获取元素。

关于javascript - 使用 JavaScript 从打开的 Web 浏览器中删除元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21644908/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com