如何使用Python和WebDriver获取标签间的文本?
你遇到的问题很常见——get_attribute("value")返回None是因为<a>标签本身就没有value属性呀!这个属性一般是给输入类元素(比如<input>)用的,而链接里的文本内容是直接嵌在标签内部的,得用专门的方法来获取。
下面给你几个靠谱的解决方案,都是Selenium里常用的:
最常用的方法:直接用
text属性
这是获取元素可见文本最简单的方式,会自动返回标签内的可见文本内容:# 假设你已经定位到这个<a>元素,比如用find_element(By.LINK_TEXT, "Property")或者其他方式 property_text = element.text print(property_text) # 输出就是"Property"用
get_attribute("innerText")
和text属性效果类似,它会返回元素渲染后的可见文本,忽略掉隐藏的内容:property_text = element.get_attribute("innerText")用
get_attribute("textContent")
这个方法会返回元素里的所有文本内容,包括那些被CSS隐藏的部分,如果你的链接文本没有隐藏的话,和上面两个结果一样:property_text = element.get_attribute("textContent")
简单总结下:如果只是要获取页面上能看到的链接文本,用element.text就足够啦,简洁又好用~
内容的提问来源于stack exchange,提问作者Ywapom
相关产品推荐
相关产品推荐

