如何使用Selenium自动化网页按钮控制?

时间:2015-02-17 16:28:04

标签: python selenium selenium-webdriver

如何使用

自动化网页按钮控件,例如拥有span孩子

driver. findElement_by_xpath ()

Ubuntu Linux和chromium Autotest

wesite是:https://www.youtube.com/my_webcam?privacy=public

我想点击开始录制按钮。 HTML来源是:

<button class="yt-uix-button yt-uix-button-size-default yt-uix-button-dark yt-uix-button-has-icon webcam-record-button" type="button" onclick=";return false;" id="record-button">
<span class="yt-uix-button-icon-wrapper">
<span class="yt-uix-button-icon yt-uix-button-icon-upload yt-sprite">
</span>
</span>
<span class="yt-uix-button-content">Start recording </span>
</button>  

我们已尝试使用

driver.find_element_by_css_selector() 
driver.find_element_by_id()
driver.find_element_by_xpath ()

但是,没有任何效果。你能否建议我们适当的解决方案?

1 个答案:

答案 0 :(得分:2)

记录按钮位于iframe中,您需要先切换该iframe,然后使用所选的选择器找到该按钮。

iframe = self.driver.find_element_by_css_selector("#webcam-container")
self.driver.switch_to_frame(iframe)
record = self.driver.find_element_by_css_selector("#record-button > span.yt-uix-button-content")
record.click()