puppeteer - 在 pyppeteer 中加载 JS 脚本时未定义对 Tone 的引用
问题描述
作为测试,我尝试用 jquery 替换tonejs,并且评估中存在对“$”的引用,但是当我尝试加载tonejs 时,对“Tone”的引用不存在。有任何想法吗?
import asyncio
from pyppeteer import launch
async def main():
browser = await launch({
"headless": True,
"ignoreDefaultArgs": [
"--mute-audio",
],
"args": [
"--autoplay-policy=no-user-gesture-required",
"--no-sandbox",
"--disable-dev-shm-usage",
"--disable-gpu",
"--no-zygote",
'--disable-setuid-sandbox',
'--single-process'
]
})
page = await browser.newPage()
await page.addScriptTag({
"url": "https://cdnjs.cloudflare.com/ajax/libs/tone/14.8.26/Tone.min.js"
# "url": "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"
})
res = await page.evaluate('''() => {
return {
"r": Tone.toString()
// THIS WORKS WHEN JQUERY IS LOADED ABOVE
// "r": $.toString()
}
}''')
await browser.close()
return res
def handler(context, event):
return asyncio.run(main())
编辑:适用于 ToneJS 版本14.5.37,但不是最新(14.8.26)版本。
解决方案
推荐阅读
- javascript - 将 Paypal sdk 外部 js 添加为 Angular 中的内部 js 文件
- mysql - SO的投票数之类的东西应该如何存储在数据库中?
- matlab - 创建 .p 文件时如何保留帮助文本?
- .net - 成功登录 AzureAD 后出现 MissingMethodException
- python - 在 Tensorflow 中使用 Rmsprop 进行线性回归
- html - 我的导航栏链接没有按照我想要的方式浮动
- sql - 创建聚合 SQL 报告,其中列基于表列表
- lwip - 由于“MEM PBUF_POOL”达到最大值,LWIP TCP 客户端传输停止
- elasticsearch - 如何在 Grafana Gauge 中显示最后一个值
- android - 如何在 Android 首选项中正确接收和存储本地目录/路径?