pyppeteer 报 Execution context was destroyed, most likely because of a navigation

pyppeteer 在执行的过程中报 Execution context was destroyed, most likely because of a navigation,意思是执行上下文被破坏,最有可能是由于导航。

这通常发生在浏览器正在执行一个任务,紧接使用方并发提交了另一个脚本到浏览器,导致浏览器发生跳转。这时第一次提交的任务会抛出异常,产生该错误。借鉴于https://blog.csdn.net/Revivedsun/article/details/84867955,

pyppeteer--常用函数 https://www.jianshu.com/p/52f9dc6fb7e1

page.waitForNavigation() 等到某动作完成,常用的是配合其他动作一起使用。用在点击页面跳转,等待导航页加载完成

   

 #使用
 #click2 = page.click('#submitButton')
 click2= page.evaluate('''()=>{document.querySelector('div.cdy0Yb>div.yKBrKe>div[role="button"]').click()}''')

 await wait_fornavigation(page,click2)
 


 async def wait_fornavigation(page,events): #等到某动作完成
    await asyncio.wait([
        events,
        page.waitForNavigation({'timeout':50000}),
    ])


'''()=>{}'''表示匿名函数,超时时间为50秒

你可能感兴趣的:(pyppeteer)