如何在 Playwright 中使用 Xpath 与 Iframe 交互

问题描述

我正在尝试切换到 iframe,以便我可以填充一个框。 iframe 有一个动态 ID,所以我不能使用它,它有一个类和一个标题,我已将其转换为 XPath。但是,当切换到 iframe 时我似乎没有收到错误,但是当它尝试填充它时会出现错误。这是我的代码。

iframe1 = page.query_selector('xpath=//iframe[@title="payment"]').content_frame()
time.sleep(5)
iframe1.fill('//*[@id="cardCvc-input"]','123')

错误

Traceback (most recent call last):
  File "C:\Python39\lib\threading.py",line 950,in _bootstrap_inner
    self.run()
  File "C:\Python39\lib\threading.py",line 888,in run
    self._target(*self._args,**self._kwargs)
  File "c:\Users\Owner\Desktop\Cheema AIO\snkrsplaywright.py",line 194,in main
    frame_element_handle = page.query_selector('//iframe[@title="payment"]')
  File "C:\Python39\lib\site-packages\playwright\sync_api\_generated.py",line 4920,in query_selector
    self._sync(
  File "C:\Python39\lib\site-packages\playwright\_impl\_sync_base.py",line 103,in _sync
    return task.result()
  File "C:\Python39\lib\site-packages\playwright\_impl\_page.py",line 346,in query_selector
    return await self._main_frame.query_selector(selector)
  File "C:\Python39\lib\site-packages\playwright\_impl\_frame.py",line 228,in query_selector
    await self._channel.send("querySelector",dict(selector=selector))
  File "C:\Python39\lib\site-packages\playwright\_impl\_connection.py",line 36,in send
    return await self.inner_send(method,params,False)
  File "C:\Python39\lib\site-packages\playwright\_impl\_connection.py",line 47,in inner_send
    result = await callback.future
playwright._impl._api_types.Error: Execution context was destroyed,most likely because of a navigation.

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)