硒用换行符execute_script

Min*_*any 2 javascript python string selenium

我正在使用selenium和Python,并且试图执行一个包含如下字符串的JS函数:

browser.execute_script("foo('someString')")
Run Code Online (Sandbox Code Playgroud)

当someString没有换行符时,此方法有效。当有换行符时,将发生以下情况:

\n     => Parse Error
\\n    => Newline is converted to a space
\r\n   => Parse Error
\\r\\n => Both characters are converted to a space
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?

fal*_*tru 5

您可以将参数传递给javascript; 这些附加参数可以使用arguments以下命令访问:

browser.execute_script("foo(arguments[0])", 'someString')
browser.execute_script("foo(arguments[0])", 'string with \n is also ok!\n')
Run Code Online (Sandbox Code Playgroud)