为了账号安全,请及时绑定邮箱和手机立即绑定

如何修复execute_script在执行多个javascript语句后不返回任何值

如何修复execute_script在执行多个javascript语句后不返回任何值

跃然一笑 2022-06-02 15:20:37
我想使用 execute_script 将字符串返回到我的 python 脚本,但我没有从我的 execute_script 函数中获取任何字符串我尝试了我的代码的变体,但它不起作用。Console.logging 我在 chrome 开发工具控制台中的代码有效。这是我正在尝试执行的 Python 代码。我希望 javascript 变量里面有一个字符串,但它是空的。javaScript = driver.execute_script('proposedProRata = document.querySelectorAll("#ProposedPercent")' + 'proposedProRataStr = ""' + 'for (let i = 0, element; element = proposedProRata[i++];) { proposedProRataStr = proposedProRataStr + element.value + " " }' + 'proposedProRataStr')我希望返回一个字符串proposedProRataStr,这样我就可以在我的Python代码中使用它,但是我没有得到任何返回的字符串,也没有错误消息
查看完整描述

1 回答

?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

这是遍历所有匹配元素然后返回值的简单方法。


javascript = '''var proposedProRataStr = ""; document.querySelectorAll("#ProposedPercent").forEach(function(el) {proposedProRataStr = proposedProRataStr + el.value + " "});return proposedProRataStr; '''

jsOutput = driver.execute(javascript)

print(jsOutput)

在浏览器控制台中编写工作代码后,只需将整个 javascript 包装进去'''(这样您就不必担心处理双引号。


查看完整回答
反对 回复 2022-06-02
  • 1 回答
  • 0 关注
  • 283 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号