为什么Selenium不能访问这些动态加载的元素?

2024-09-29 00:21:13 发布

您现在位置:Python中文网/ 问答频道 /正文

应该有七个元素谁的类是“顶级搜索”。但是,尽管隐式使用了\u wait,空列表还是会打印以下内容:

driver = webdriver.Firefox()
driver.maximize_window()
driver.implicitly_wait(30)
driver.get('http://www.egglandsbest.com/where-to-buy/')

print driver.find_elements_by_css_selector('div[class="top_search"]')

Tags: comhttp元素列表getwwwdriverfirefox
1条回答
网友
1楼 · 发布于 2024-09-29 00:21:13

您需要切换到iframe:

from selenium import webdriver
driver = webdriver.PhantomJS()
driver.implicitly_wait(10)
driver.get("http://www.egglandsbest.com/where-to-buy/")
driver.switch_to.frame(driver.find_element_by_id("destini"))
print driver.find_elements_by_xpath('//div[@class="top_search"]')

我只是快速查看了一下源代码,这里有很多iframe,所以您必须筛选并查看您需要哪些iframe。你知道吗

相关问题 更多 >