使用 Selenium Python 执行带有 null 条件的 Jquery
Posted
技术标签:
【中文标题】使用 Selenium Python 执行带有 null 条件的 Jquery【英文标题】:Execute Jquery with null condition using Selenium Python 【发布时间】:2020-12-21 22:47:50 【问题描述】:您好,我尝试发送如下所示的 javascript:
$("img[src|='']").attr('src', result.responseJSON.data);
是将具有空值的图像更改为新值。我正在使用执行脚本,所以它看起来像这样:
driver.execute_script("$("img[src|='']").attr("src", result.responseJSON.data););")
和
driver.execute_script('$("img[src|='']").attr('src', result.responseJSON.data););')
但它总是返回类似的错误
或
我还将它签名到一个python变量并使用执行脚本调用它但没有运气,有什么提示可以修复它吗? 提前致谢。
【问题讨论】:
两个想法: 1/ 它可以从 devtools 命令行工作吗? -execute_script
== command line
(只是操作有点不同),如果你可以在那里运行,你可以让它在其他 2/什么是 img?那是你要传入的对象吗?
Img 是一个 html 标签,所以我想将值插入到
您的空标签选择是正确的,但您调用执行脚本的方式完全关闭。
又怎么正确呢?
您是否需要特别定义哪个图像标签?您是否先在控制台中尝试过?
【参考方案1】:
我终于找到了答案,我应该把 escape char 放在 like 之前:
driver.execute_script("$(\"img[src|='']\").attr("src", result.responseJSON.data);")
它有效。
【讨论】:
以上是关于使用 Selenium Python 执行带有 null 条件的 Jquery的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法使用 Selenium 和 Python 绑定执行鼠标悬停(悬停在元素上)?
如何使用 Selenium 和 Python 绕过带有 buster 扩展的 ReCaptcha
Selenium / Python - 带有空格的类名无法本地元素
带有 Selenium 的 Python:从文件系统拖放到 webdriver?
在带有 selenium 的 python 中,如何轮换 IP 地址?
带有Python的Selenium Webdriver - 无法使用Selenium Web驱动程序在Web应用程序中提供输入(Date)