Python - функция Python selenium driver.execute_script() не выполняет мой код в скрипте?
В моем скрипте python я использую функцию селена driver.execute_script()
который не выполнит весь код в скрипте. В частности, один код работает, а другой нет.
Этот код работает:
driver.execute_script("""
let w = window.open("{}","_blank");
w.console.log("asdf");
""".format(link))
Но здесь это не сработало:
driver.execute_script("""
let w = window.open("{}","_blank");
w.addEventListener("DOMContentLoaded", function () {
w.console.log("asdf");
});
""".format(link))
Мне нужен этот прослушиватель событий, потому что тело этой функции будет работать с элементами DOM, но когда я набираю код с помощью прослушивателя событий python, просто пропускаю выполнение скрипта, ПОЧЕМУ?:(
1 ответ
Решение
Когда вы используете format()
тогда {...}
имеет особое значение в строке - не только в open("{}"
но и в function () {...}
- и вы должны использовать {{ }}
использовать это как обычно { }
-
function () {{....}}
Подробнее о PyFormat