首页 > 解决方案 > Selenium chromedriver 根本不会检测某些网站或其元素

问题描述

编写的通过chromedriver与某个网站交互的python脚本找不到任何元素或打印页面源。整个页面位于框架集中的框架内。似乎切换到框架是人们在这种情况下给出的建议。我无法找到带有标签名称或 XPath 的框架

网站的一般 HTML

<html>
    <head>
    </head>
           <frameset>
                    <frame src="ebrokerlogin.html">
                          <html>
                               rest of website !!!!!!!!!      
                          /html>
                     </frame>
           </frameset>
</html>

一旦页面打开,这些行就会运行

driver.switch_to.frame(driver.find_element_by_tag_name("frame"))
print(driver.page_source)

我收到的例外是

selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"css selector","selector":"frame"}
  (Session info: chrome=83.0.4103.116)

如何切换到网站上的框架?为什么我的方法不起作用?

标签名称的证据

ps:如果注释掉driver.switch_to,打印出来的页面源是上一个网站,不是这个。

更新:XPath 不工作的 证据

标签: pythonhtmlseleniumselenium-chromedriverframe

解决方案


selenium 通过点击链接获得了这个网站。它似乎继续相信它在以前的网站上


推荐阅读