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

如何筛选LinkedIn自动化中对应Connect按钮的姓名元素?

解决方案:让姓名与Connect按钮精准绑定

解决这个问题的核心是避免分开取按钮和姓名列表再靠索引匹配——因为页面里混有Follow按钮时,索引必然错位。下面给你两种直接可行的实现方式:

方法一:用XPath直接筛选对应Connect按钮的姓名

通过XPath的祖先节点关联,先定位所有显示「Connect」的按钮,再往上找到所属的用户卡片,最后从卡片里提取姓名,拿到的列表自然只对应有Connect按钮的用户:

driver.get("https://www.linkedin.com/search/results/people/?network=%5B%22S%22%5D&origin=FACETED_SEARCH&page=7")
time.sleep(2)

# 直接用XPath定位所有带Connect按钮的用户姓名
connect_name_elements = driver.find_elements(
    By.XPATH, 
    "//span[normalize-space(text())='Connect']/ancestor::div[contains(@class, 'search-result__info')]//a[contains(@class,'app-aware-link')]/span[@dir='ltr']/span[@aria-hidden='true']"
)

all_names = []
for elem in connect_name_elements:
    # 提取姓名的第一部分
    first_name = elem.text.split(" ")[0]
    all_names.append(first_name)
    print(first_name)

说明:

  • normalize-space(text())='Connect'是为了处理按钮文本里的换行和空格;
  • ancestor::div[contains(@class, 'search-result__info')]需要根据你页面的实际用户卡片容器class调整,右键检查元素找到正确的外层容器即可。

方法二:遍历用户卡片,检查按钮类型后提取姓名

先找到所有用户卡片,对每个卡片单独检查按钮类型,只有按钮是Connect时才提取对应姓名,这种方式更稳定,不易受DOM小变化影响:

driver.get("https://www.linkedin.com/search/results/people/?network=%5B%22S%22%5D&origin=FACETED_SEARCH&page=7")
time.sleep(2)

# 找到所有用户卡片容器(需根据页面实际class调整,比如search-result__wrapper)
user_cards = driver.find_elements(By.XPATH, "//div[contains(@class, 'search-result__wrapper')]")

all_names = []
for card in user_cards:
    # 在当前卡片范围内查找按钮
    buttons = card.find_elements(By.TAG_NAME, 'button')
    for btn in buttons:
        btn_text = btn.text.strip()
        if btn_text == "Connect":
            # 从当前卡片提取姓名
            name_elem = card.find_element(
                By.XPATH, 
                ".//a[contains(@class,'app-aware-link')]/span[@dir='ltr']/span[@aria-hidden='true']"
            )
            first_name = name_elem.text.split(" ")[0]
            all_names.append(first_name)
            print(first_name)
            break  # 每个卡片只处理一个按钮,避免重复

补充提示:

  • 尽量用WebDriverWait替代time.sleep,可以更精准地等待元素加载完成,避免页面加载慢导致的元素找不到问题;
  • LinkedIn有严格的反爬机制,自动化操作频率不要过高,避免账号受限。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 14:25:14