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

如何使用Python的Selenium点击LinkedIn的下一页按钮?

解决LinkedIn搜索结果页Selenium无法定位「下一页」按钮的问题

以下是几种常见问题的排查和解决方法:

1. 等待元素加载完成(最常见原因)

直接用find_element可能在元素还没渲染完成时执行,导致找不到。改用WebDriverWait等待元素可点击:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import TimeoutException

try:
    # 等待10秒,直到下一页按钮可点击
    next_button = WebDriverWait(driver, 10).until(
        EC.element_to_be_clickable((By.CSS_SELECTOR, ".artdeco-pagination__button--next"))
    )
    next_button.click()
except TimeoutException:
    print("未找到下一页按钮或按钮不可点击")

2. 检查选择器是否准确

LinkedIn的UI可能更新,类名可能变化。可以手动检查元素属性,改用更稳定的定位方式:

# 针对英文界面,用aria-label属性定位
next_button = WebDriverWait(driver, 10).until(
    EC.element_to_be_clickable((By.CSS_SELECTOR, '[aria-label="Next"]'))
)
# 针对中文界面
next_button = WebDriverWait(driver, 10).until(
    EC.element_to_be_clickable((By.CSS_SELECTOR, '[aria-label="下一页"]'))
)

3. 滚动到按钮可见位置

如果按钮在页面底部未进入视口,Selenium可能无法交互,先滚动到元素位置:

next_button = WebDriverWait(driver, 10).until(
    EC.presence_of_element_located((By.CSS_SELECTOR, ".artdeco-pagination__button--next"))
)
# 滚动到按钮位置
driver.execute_script("arguments[0].scrollIntoView();", next_button)
# 等待按钮可点击后再点击
WebDriverWait(driver, 5).until(EC.element_to_be_clickable((By.CSS_SELECTOR, ".artdeco-pagination__button--next"))).click()

4. 确认已登录LinkedIn

LinkedIn的搜索结果翻页需要登录状态,确保你的driver实例已经完成登录流程(手动或自动登录),未登录状态下可能没有分页按钮或按钮不可交互。

5. 检查是否存在iframe

极少数情况下分页元素可能在iframe内,需要先切换到iframe再定位:

# 找到对应的iframe并切换
iframe = driver.find_element(By.TAG_NAME, "iframe")
driver.switch_to.frame(iframe)
# 然后执行定位按钮的代码
# 操作完成后切回主文档
driver.switch_to.default_content()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 15:54:58