gpt4 book ai didi

Python Selenium 在 iframe 中切换到 iframe

转载 作者:太空狗 更新时间:2023-10-29 21:18:29 25 4
gpt4 key购买 nike

我正在尝试使用 Selenium、Python 和 BS4 访问 iframe 中的 iframe

from bs4 import BeautifulSoup
from selenium import webdriver
import time
import html5lib

driver = webdriver.Firefox()
driver.implicitly_wait(10)

driver.get('http://myurl.com')
try:
time.sleep(4)
iframe = driver.find_elements_by_tag_name('iframe')[0]
driver.switch_to_default_content()

driver.switch_to_frame(iframe)
driver.switch_to_default_content()
driver.find_elements_by_tag_name('iframe')[0]

output = driver.page_source

print output

finally:
driver.quit();

在返回的文本中,似乎还有两个 iframe。我将如何访问这些?我在上面的代码中尝试过但没有成功。

最佳答案

switch_to_default_content() 将使您返回到文档的顶部。发生的事情是您切换到第一个 iframe,切换回文档顶部,然后尝试找到第二个 iframe。 Selenium 找不到第二个 iframe,因为它在第一个 iframe 中。

如果你删除第二个 switch_to_default_content() 你应该没问题:

iframe = driver.find_elements_by_tag_name('iframe')[0]
driver.switch_to.default_content()

driver.switch_to.frame(iframe)
driver.find_elements_by_tag_name('iframe')[0]

关于Python Selenium 在 iframe 中切换到 iframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23302769/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com