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

使用Python、Selenium、BeautifulSoup登录爬取领英时无法访问非人脉主页问题

领英搜索结果页个人主页链接定位与访问受限解决方案

搜索结果页公开个人主页链接的DOM定位位置

  • 所有自然搜索结果的用户卡片统一包裹在class为entity-result的div容器内,个人主页真实链接存于卡片内class为app-aware-link的a标签的href属性中,链接路径格式固定为https://www.linkedin.com/in/[用户专属slug]/。
  • 解析时直接提取a标签的原生href属性即可,不要依赖模拟点击跳转:领英会给非直接人脉的用户卡片加前端点击遮罩,手动点击会先跳权限提示,但DOM初始加载时存的href是真实主页路径,用BeautifulSoup直接解析属性就能拿到,不需要额外触发交互。
  • 注意过滤无效链接:广告、推广位的卡片外层会带有promoted、ad-entity相关class,这类容器内的a标签大多指向活动页、招聘页,不属于个人主页链接,解析时直接跳过即可。

访问个人主页返回权限不足提示的实操解决技巧

  • 先明确基础规则:领英个人资料并非全公开属性,用户可自主设置资料可见范围,3度人脉以外、设置了非公开可见的用户,本身就仅对外展示极少量内容,这类权限限制属于平台正常规则,不是脚本逻辑错误。
  • 补全会话请求头:直接裸跳转个人主页很容易被反爬识别为爬虫请求,触发权限拦截。访问前需要从当前登录会话提取csrf token,将请求Referer设置为搜索结果页地址,Selenium 4+版本可通过CDP命令注入头信息,参考代码:
# 提取当前会话的CSRF令牌
csrf = driver.get_cookie("JSESSIONID")["value"].strip('"')
# 注入全局请求头
driver.execute_cdp_cmd("Network.setExtraHTTPHeaders", {
    "headers": {
        "csrf-token": csrf,
        "Referer": "https://www.linkedin.com/search/results/people/"
    }
})
  • 清洗链接参数:从DOM中提取的原始链接一般会带miniProfileUrn、trackingId等大量追踪参数,带参数访问的拦截率远高于纯路径链接,可按以下逻辑清洗:
raw_href = a_tag.get("href", "")
# 截取参数前的纯路径
clean_link = raw_href.split("?")[0]
# 校验是否为个人主页链接
if "/in/" in clean_link and clean_link.endswith("/"):
    profile_links.append(clean_link)
  • 控制访问频率:连续访问个人主页的间隔不要低于3秒,每访问10个页面随机停顿10-20秒,短时间批量请求会触发账号临时降权,即使是你的直接人脉也可能返回权限不足提示。
  • 降低账号被识别为爬虫的概率:不要用无头模式运行Selenium,优先导入手动正常登录后导出的cookie文件复用会话,不要每次启动脚本都走登录流程,正常使用的账号访问受限概率会低很多。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 09:51:16