Selenium获取表格内a标签文本失败及对象属性查看咨询
问题原因与解决方案
文本无法获取的原因
你的表格设置了style="display: none;",整个表格(包括内部的链接文本)处于不可见状态。Selenium的element.text属性仅返回元素的可见文本,因此无法提取隐藏元素中的文本内容。
解决办法
可以通过获取元素的textContent或innerText属性来提取隐藏文本,这两个属性不受元素可见性限制:
title = driver.find_elements(By.XPATH, "//td[@class='title']//a[@href]") for element in title: href = element.get_attribute("href") # textContent 可获取所有文本内容,包括隐藏的 text = element.get_attribute("textContent").strip() element_list.append([href, text])
textContent:返回元素所有文本内容(包括空格、换行),兼容性更好;innerText:返回贴近页面渲染格式的文本,会自动过滤多余空格和换行,按需选择即可。
查看Selenium元素属性的简便方法
- 打印元素完整HTML结构:通过
outerHTML属性查看元素的所有属性和子内容print(element.get_attribute('outerHTML')) - 查看元素对象的所有属性/方法:用Python内置的
dir()函数print(dir(element)) - 直接获取指定HTML属性:用
get_attribute("属性名"),比如get_attribute("class")、get_attribute("style")等。
内容的提问来源于stack exchange,提问作者brassgoblin34
相关产品推荐
相关产品推荐

