在R中执行javascript代码的特殊字符

时间:2015-10-27 14:01:25

标签: r

我尝试执行一个在JS控制台中运行的javascript行:

window.document.querySelectorAll('.atbk[href*="/url"]')

我尝试将它与以下脚本一起使用:

startServer()
remDr <- remoteDriver()
remDr$open()
remDr$navigate(a_url)
re <-  remDr$executeScript('return window.document.querySelectorAll('.atbk[href*="/url"]');')

Error: unexpected symbol in "re <-  remDr$executeScript('return window.document.querySelectorAll('.atbk"

我应该使用的角色有什么不同吗?

1 个答案:

答案 0 :(得分:2)

使用反斜杠来转义字符串中嵌套引号的效果:

x <- "return window.document.querySelectorAll('.atbk[href*=\"/url\"]');"

在控制台中看起来可能不合标准,但在内部保存字符串时没有反斜杠。您可以查看?cat

cat(x)
return window.document.querySelectorAll('.atbk[href*="/url"]');

如果你仍然不确定,这是第二次测试。您可以看到\"保存为一个字符:

> y <- "\""
> y
[1] "\""
> nchar(y)
[1] 1
> cat(y)
"