Selenium如何获取网站所有链接的链接文本并保存到列表
获取网页链接文本并保存到列表
要获取<a>标签内的链接文本而非href地址,只需把原来获取href的逻辑替换为获取元素的文本内容即可,以下是修改后的代码:
# 初始化空列表用于存储链接文本 link_texts = [] elems = browser.find_elements(By.XPATH,'//a[@href]') for elem in elems: # 获取元素的可见文本,strip()去除前后空白字符 text_content = elem.text.strip() # 过滤掉空文本的无效链接 if text_content: link_texts.append(text_content) # 输出结果列表 print(link_texts)
补充说明:
elem.text是Selenium获取元素可见文本的标准方法,会自动处理浏览器渲染后的文本内容- 如果遇到动态加载的文本或者
elem.text无法获取内容的情况,可以尝试使用elem.get_attribute("innerText")或elem.get_attribute("textContent"),这两个方法能获取元素节点内的所有文本(包括隐藏文本) - 加入
strip()是为了清理文本前后的空格、换行等无效字符,比如你示例中链接文本前的空格 - 增加空文本过滤是为了避免列表中出现无效的空字符串条目
内容的提问来源于stack exchange,提问作者xxgaryxx
相关产品推荐
相关产品推荐

