我正在尝试自动点击网页上嵌入式iframe音乐播放器的play按钮,我正在使用python3和Selenium编码来选择要点击的元素
当用户代理被更改为复制移动设备时,包装层会隐藏我通常可以单击的按钮,它会询问我是要在主站点还是在浏览器中侦听。我想在浏览器中收听,但到目前为止,我尝试单击正确的元素来实现这一点的所有操作都失败了
我相信我点击了错误的部分,但找不到访问正确部分的方法
浏览器的inspect窗口显示了我需要单击的包装部分的以下内容:
<a class="mobilePrestitial__link sc-font-light" href="#">
Listen in browser
</a>
::before
"
Listen in browser
"
/a>
当我将鼠标悬停在::before部分上时,它会在浏览器中高亮显示我认为需要单击的部分,但使用右键单击检查::before只是说“在视图中滚动”,因此我无法复制元素所表示的任何内容
我现在的代码是:
driver.switch_to.default_content()
driver.switch_to.frame(driver.find_element_by_partial_link_text('Listen in browser'))
element = WebDriverWait(driver, 10).until(
EC.element_to_be_clickable((By.XPATH, '//a[@class="mobilePrestitial__link"]'))
)
element.click()
但是它没有消息就出错了,我怀疑我需要单击::before表示的元素,但我不知道如何做到这一点
我找到了一个解决方法,并通过在python脚本中使用Selenium隐藏包装覆盖来进行Javascript调用,从而解决了这个问题
一旦用上述代码隐藏了覆盖,就可以在浏览器中访问原始按钮
相关问题 更多 >
编程相关推荐