【发布时间】:2019-09-06 00:40:50
【问题描述】:
我有以下代码应该在这个异步 Javascript 执行时等待 2 秒,然后调用回调。但是,由于某种原因,arguments[0] 不是回调,即使我发现的 Selenium 文档指出使用 execute_async_script 时,回调函数会自动注入到 arguments 数组中。
driver.execute_async_script(f"""
function sleep(ms) {{
return new Promise(resolve => setTimeout(resolve, ms));
}}
async function test() {{
console.log("before 2")
await sleep(2000)
console.log("after 2")
console.log(arguments)
arguments[0]()
}}
test()
""")
arguments 被记录为一个空数组。
发生了什么事?
【问题讨论】:
标签: python-3.x selenium