首页 > 解决方案 > 如何在 Python 中使用 Selenium 来捕获 Google 日历上的动态元素?

问题描述

我正在创建一个自动登录的谷歌日历机器人,我遇到了一个问题,即每次登录时某个元素的 xpath 都会不断变化(但它具有类似的形式)。这里有些例子:

// [@id="c307"]/div/div[1]/div/div[2]/div/div[1]/div[1]/div/label/div[1]/div/input/ / [@id="c236"]/div/div[2]/div[1]/div/div/span/div/div[1]/div[2]/div[1]/div/div[1 ]/input' //*[@id="c27"]/div/div[1]/div/div[2]/div/div[1]/div[1]/div/label/div[1] /div/输入

等等。鉴于它总是在变化,我如何使用 Selenium 点击这个动态元素?帮助将不胜感激,谢谢。

标签: pythonpython-3.xseleniumbots

解决方案


我建议在 xpath 上使用 querySelector

MDN 网络文档 document.querySelector

这个的实现看起来像:

driver.execute_script('document.querySelector("#specific_element_id").click()')

此代码找到一个看起来像的元素<input type="button" id="specific_element_id">并将单击它。


推荐阅读