使用JavaScrip从打开的Webbrowser中删除元素

2024-10-02 08:22:39 发布

您现在位置:Python中文网/ 问答频道 /正文

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

我从Python调用javascript:Selenium控制浏览器,并将javascript发送到open浏览器。但我认为问题在于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删除元素。(尽管我可以成功地添加它们)

我怎么能跳过预防措施呢?你知道吗


Tags: 代码browser脚本元素网站varselenium错误
2条回答
$('.RemoveByMe').remove();

这个片段是jQuery代码,一个Javascript库。你知道吗

您可以在以下线程中找到问题的解决方案: Remove all elements of a certain class with JavaScript

第一个显然似乎没有定义jQuery。你知道吗

第二个看起来很近,不过你需要document.getElementsByClass文件名('RemoveByMe')。。。而不是通过getElementsTagName,因为您希望通过CSS类获取元素。你知道吗

相关问题 更多 >

    热门问题