木偶:当我拥有Iframe的ElementHandler时,如何在iframe上下文中评估代码

时间:2019-12-08 12:43:41

标签: iframe puppeteer

在Puppeteer中,有WARNING in /app/node_modules/any-promise/register.js 24:14-37 [1] Critical dependency: the request of a dependency is an expression [1] @ /app/node_modules/any-promise/index.js [1] @ /app/node_modules/koa-compose/index.js [1] @ /app/node_modules/koa-convert/index.js [1] @ /app/node_modules/koa/lib/application.js [1] @ ./server/index.ts 可以获取页面中的所有框架(包括主框架),然后可以在iframe的上下文中使用page.frames()

但是当我有page.frames()[0].evaluate( _=> 'run some code')时该怎么做?

In the documentation是ElementHandler,iframeHandler = page.$('ifram#id')将元素handle作为第一个参数传递给pageFunction。

1 个答案:

答案 0 :(得分:0)

所以我找到了它:

根据文档

  

elementHandle.contentFrame()
  返回:System.setProperty("Webdriver.Chrome.driver","/C:/Users/shale/Downloads/chromedriver_win321/chromedriver"); 解析到引用iframe节点的元素句柄的内容框架,否则返回null

如此

System.setProperty("webdriver.chrome.driver","C:/Users/shale/Downloads/chromedriver_win321/chromedriver.exe");