You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium动态页面爬取:随机href链接内文本获取求助

解决Selenium获取动态页面中随机href链接的文本问题

针对你遇到的场景——父元素(span/div)的class固定,内部a标签的href随机,无法通过href定位获取text2,这里提供几种直接可行的方法:

方法1:通过已定位的父元素获取子a标签

既然你已经能成功定位到class为class number 1的父元素,直接在这个元素下查找子a标签即可,完全不用管href:

# 先定位父元素
parent_element = driver.find_element(By.CLASS_NAME, "class number 1")
# 获取text2
text2 = parent_element.find_element(By.TAG_NAME, "a").text
# 如果需要顺便获取那个随机的href,也可以这么拿
random_href = parent_element.find_element(By.TAG_NAME, "a").get_attribute("href")

方法2:用XPath直接定位

通过XPath关联父元素的class和子a标签,一步到位:

# span的情况
text2 = driver.find_element(By.XPATH, "//span[@class='class number 1']/a").text
# 如果是div,替换成div即可
text2 = driver.find_element(By.XPATH, "//div[@class='class number 1']/a").text

方法3:用CSS选择器定位

利用父元素的类名(注意class里的空格代表多个类,用.连接)来定位子a标签:

# 匹配同时包含class、number、1三个类的元素下的直接子a标签
text2 = driver.find_element(By.CSS_SELECTOR, ".class.number.1 > a").text

这些方法都不依赖随机变化的href,完全基于固定的父元素结构来定位,不管href怎么生成都能稳定拿到text2。

内容的提问来源于stack exchange,提问作者Gabrielek

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 19:31:09