Python функция селена driver.execute_script () не выполняет мой код в сценарии? - PullRequest
0 голосов
/ 16 июня 2020

В моем 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 Ответ

0 голосов
/ 18 июня 2020

Когда вы используете format(), тогда {...} имеет особое значение в строке - не только в open("{}", но и в function () {...} - и вы должны использовать {{ }}, чтобы использовать его как обычно { } -

function () {{....}}

Подробнее о PyFormat

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...