我正在编写一个从站点中抓取信息的python代码,但我必须首先去掉一些cookies弹出窗口。要单击右侧按钮,我需要它们的XPath(据我所知)。问题是XPath的一部分每次都发生变化,我不知道如何找到它们,因为它们实际上没有任何属性,比如ID之类的。
这是按钮的HTML:
<button class="Button__StyledButton-a1qza5-0 lcqSKB" style="visibility: visible; background-color: rgb(12, 44, 91);">Lees meer om voorkeuren te accepteren</button>
这是我现在使用的命令:
driver.find_element_by_xpath('/html/body/div[14]/div[1]/div[3]/button').click()
这是XPath:
/html/body/div[VARIABLE]/div[1]/div[3]/button
变量每次都变,所以我改变了14。
如果您像现在这样使用完整的xPath,就会一直遇到类似的问题。更好的方法是找出另一种/更短的方法来获得该元素。
没有URL很难进行测试,但可以尝试以下方法之一:
driver.find_element_by_css_selector("Button__StyledButton-a1qza5-0.lcqSKB")
driver.find_element_by_css_selector("Button__StyledButton-a1qza5-0")