首页 > 解决方案 > Python/Selenium - 单击特定 div 上的所有元素

问题描述

所以,我有这个代码来搜索一些数据并尝试下载搜索返回的文件。

它可以很好地进行搜索,但我在尝试下载时遇到了一些问题。下载链接是通过这个 <a WGet script for... </a 显示在我上传的图片上的。

图片带有<我需要点击的元素

问题是,根据搜索,可用链接的数量会有所不同。在这种特殊情况下,我有一个,但有时有两个、三个,甚至八个。

我需要一种方法来动态地点击它们,不管我有多少。我尝试了两种方法,但都失败了:

                wgetScripts = browser.find_elements_by_xpath("//*[contains(text(), 'WGET Script for')]").click()

                wgetScripts = browser.find_elements_by_xpath("//*[contains(text(), 'WGET Script for')]")
            for button in wgetScripts:
                button.click()

我无法通过 id、class 或其他内容找到元素,因为该元素只是一个普通的 <a,只有一个 href。没有id,没有class,什么都没有。

元素的 HTML 是:

<a href="javascript:wgetScript(&quot;esgf-node.llnl.gov&quot;)">WGET Script for esgf-node.llnl.gov</a>

标签: pythonseleniumselenium-webdriverweb-scrapingwebdriver

解决方案


推荐阅读