【问题标题】:Python Selenium disable CSS with PhantomJS webdriverPython Selenium 使用 PhantomJS webdriver 禁用 CSS
【发布时间】:2016-06-10 13:54:53
【问题描述】:

在使用 Selenium 的 PhantomJS webdriver 时是否可以禁用 CSS 似乎存在混淆。通过调整 FireFox 配置文件来使用 FireFox 似乎是绝对可行的,但我希望将它用于 PhantomJS,因为它通常比 FireFox 快。

在这种情况下是否可以禁用 CSS?如果是这样,您能否提供一些如何实现它的想法?

【问题讨论】:

    标签: python css selenium-webdriver phantomjs


    【解决方案1】:

    PhantomJS 似乎没有禁用 CSS 的选项。您可以通过自己删除 CSS 来解决此限制:

    driver.execute_script("""
        var toRemove = [];
        toRemove.push.apply(toRemove, document.querySelectorAll('link[type*=\"/css\"]'));
        toRemove.push.apply(toRemove, document.querySelectorAll('style'));
        toRemove.forEach(function(s){
            s.parentNode.removeChild(s);
        });
        [].forEach.call(document.querySelectorAll('[style]'), function(e){
            e.removeAttribute('style');
        });
    """)
    

    这将删除所有链接、本地和内联样式,并保留默认浏览器样式。您可能想要添加某种重置样式表。

    【讨论】:

    猜你喜欢
    • 2013-07-19
    • 1970-01-01
    • 2015-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-05
    • 1970-01-01
    • 2014-07-31
    相关资源
    最近更新 更多