当前位置: 首页 > 知识库问答 >
问题:

硒不能得到iframe

方宜
2023-03-14
driver = webdriver.Firefox()
url = "https://www.jobsbank.gov.sg/ICMSPortal/portlets/JobBankHandler/SearchDetail.do?id=JOB-2016-0008238"
driver.get(url)
iframes = driver.find_elements_by_xpath('//*[@id="divMainJobDescription"]')
print len(iframes)
driver.switch_to_frame(iframes)
print driver.page_source

我得到以下错误:

回溯(最近调用最后一次):文件“D:\scraper.py”,第79行,在主()文件“D:\Abigail MTI Projects\Singapore Skills\JobsBankScraper\JobsBank14012016_abi.py”中,第74行,在主Driver.switch_to_frame(iframes)文件“C:\python27\lib\site-packages\selenium\webdriver\remote\webdriver.py”中,第537行,在switch_to_frame(command.switch_to_frame,{'id':frame_reference})文件“C:\python27\lib\site-packages\selenium\webdriver\remote\webdriver.py”,第201行,执行self.error_handler.check_response(响应)文件“C:\python27\lib\site-packages\selenium\webdriver\remote\errorhandler.py”,第181行,在check_response引发exception_class(消息,屏幕,stacktrace温度/TMPWelh3x/extensions/fxdriver@googlecode.com/components/driver-component.js:10745)在delayedcommand.prototype.executeinternal_h(file://c://users/mti_wl~1/appdata/local/temp/tmpwelh3x/extensions/fxdriver@googlecode.com/components/command-processor.js:12551)在delayedcommand.prototype.js:12551)在在delayedcommand.prototype.execute/<(file://c://users/mti_wl~1/appdata/local/temp/tmpwelh3x/extensions/fxdriver@googlecode.com/components/command-processor.js:12498)

共有1个答案

欧阳意蕴
2023-03-14

Iframes是列表,您需要切换到单个帧。

Driver.find_elements返回列表,而Driver.find_elements返回单个web元素(请注意element/s中的's)。

此外,divmainjobdescription不是iframe,我相信您正在查找framejobdescription

iframe = driver.find_element_by_id("frameJobDescription")
 类似资料:
  • 我正在使用selenium测试脚本。我得到以下错误和这个错误随机发生。当我跑10次时,我会得到大约两次。所以它不是真的可复制的。有人知道为什么会这样吗?我试图单击的元素在浏览器中绝对可见,并且不会四处移动,因此不需要调整大小或拖动元素。我正在使用chrome webdriver,我阅读了其他故障排除策略(调试“Element is not clickable at point”错误),它们似乎与我

  • 我正在使用selenium创建kahoot机器人泛滥器。(kahoot.it)我正在尝试使用selenium来定位输入框以及确认按钮。每当我尝试将它们定义为变量时,我都会得到这个。"命令引发了一个异常:TimeoutException: Message:",我认为这意味着我设置的5秒已过期,这意味着该元素从未被定位。 我试图定位一个“Iframe ”,但并不成功(可能做错了),但我已经搜索了几个小

  • 这是我用来使用铬Web驱动程序和python查找元素的代码行 这是每次尝试运行代码时抛出的错误 这些是标题栏上的按钮,我试图让我的代码单击html按钮 这是努力按钮的html代码,我试图使用selenium来定位它,以便它可以点击这里,但它总是说没有找到这样的元素 我甚至创建了一个单独的函数来一次又一次地找到元素并在每次成功尝试后Hibernate5秒,直到它点击了元素,但仍然没有运气它永远运行而

  • 任何提示都会很有帮助!

  • 大家好,我正试图在网站中找到一个元素,但出于某种原因,它不允许我。该网页是Reddit的登录形式,我尝试输入用户名和密码,但当我列出所有输入时,它只出现在顶部搜索栏中。我想这是因为它就像在另一个“标签”一样,它会弹出到前面,但我不知道如何管理它。提前谢谢。

  • 我正在学习硒,我需要一些帮助。好吧,我正在使用这个网站。这是用例: < li >在搜索栏中输入文本(完成) < li >按搜索按钮。(未完成) 我已尝试使用类名单击按钮,但它不起作用 我使用的是Chromedrive 74和selenium : 3.9.0版本