Selenium点击Img按钮打开新标签,如何获取LinkedIn目标链接?
解决方案
问题出在你直接点击了img元素,但实际的跳转链接并不在img标签上,这类图标链接通常嵌套在父级或祖先级的<a>标签中,你需要定位到包含该img的<a>标签,提取它的href属性值,而非执行点击操作。
修正后的代码
首先确保导入必要的模块:
from selenium.webdriver.support import expected_conditions as EC
然后使用以下代码提取目标URL:
# 等待包含LinkedIn图标的<a>标签加载完成 link_element = WebDriverWait(driver, 30).until( EC.presence_of_element_located((By.XPATH, "//a[.//img[@alt='linkedin icon']]")) ) # 提取<a>标签的href属性值,即LinkedIn目标链接 linkedin_url = link_element.get_attribute("href") print(linkedin_url)
代码说明
//a[.//img[@alt='linkedin icon']]:该XPath会精准定位到包含alt属性为linkedin icon的img的<a>标签,找到真正承载跳转链接的元素。get_attribute("href"):直接提取<a>标签的目标地址,避免触发点击打开新标签页的操作。
内容的提问来源于stack exchange,提问作者SM079
相关产品推荐
相关产品推荐

