我有一个脚本(在<script></script>
标签内),每次加载页面时都会执行该脚本。在WebDriver中加载页面之前是否可以删除WebElement以防止该脚本执行?在WebDriver中加载页面之前删除部分HTML - Selenium&Python
我在的思路思考的东西:
以某种方式获取原料HTML代码(也许能使源或东西),去除部分(硒或解析器),“注入”编辑的代码返回到Selenium(Firefox WebDriver或者PhantomJS),最后在该网站上的所有页面上执行。
有没有可能做到这一点,或者这可能是不可能的设计?
您是否有权访问原始HTML? –
我不知道你的意思是什么。但我可以在网站上看到什么。我可以通过使用像driver.find_element_by_tag_name()这样的适当方法将该html保存为字符串。get_attribute('outerHTML')(如果我没有记错,我现在不在我的主计算机上。为了不运行该脚本,并且不加载该页面,这是无用的,因为我无法找到一个元素,因此在没有加载页面的情况下获得原始html数据。 –
Clone
Selenium会提出请求,可能您要做的所有事情都是在页面加载完成后和脚本运行),你可以做什么(它不会很漂亮,但是......)是为你正在运行测试的浏览器(例如FF或Chrome)创建一个补充来删除这个脚本URL,然后保存它的配置文件,这个配置文件可以在启动测试时指出,什么会阻止脚本运行 – Tom