我有一個腳本(在<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