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

Selenium访问offspring.co.uk触发Akamai反爬被拒该如何解决

规避Akamai Bot-Protection反爬的可行方案
  • 替换原生Selenium驱动,抹除自动化特征
    原生Selenium会暴露window.navigator.webdriver、document.documentElement.getAttribute("webdriver")等数十个可被检测的特征标识,Akamai的规则库已经覆盖了这些特征。推荐使用undetected-chromedriver替代原生驱动,该工具会自动修改所有常见的自动化指纹,无需手动配置大量参数。
    代码示例(替换原有驱动初始化逻辑即可):
import undetected_chromedriver as uc
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver import ActionChains
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
import time
import random

def call_Website():
    # 初始化undetected chromedriver
    options = uc.ChromeOptions()
    # 加载本地用户配置(可选,提升环境真实性)
    # options.add_argument(f"user-data-dir=C:/Users/你的用户名/AppData/Local/Google/Chrome/User Data")
    options.add_argument("--disable-blink-features=AutomationControlled")
    # UA需要和当前实际使用的Chrome版本对应,不要使用过期版本号
    options.add_argument("user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36")
    browser = uc.Chrome(options=options)
    wait = WebDriverWait(browser,20)
    action = ActionChains(browser)
    
    # 后续页面访问、操作逻辑可保留,调整输入点击规则即可
  • 优化人机交互模拟逻辑
    当前的操作间隔都是固定值、轨迹过于规律,很容易被行为检测识别:
    1. 输入账号密码时,拆分字符逐个输入,每个字符间隔随机0.1~0.5秒,不要一次性填充完成
    2. 鼠标移动、点击位置增加随机偏移,不要每次都精准落在元素中心位置,偏移范围控制在元素宽高的10%以内
    3. 操作间隔使用随机值代替固定的time.sleep,比如等待2秒改为time.sleep(random.uniform(1.5,2.5))
  • 调整环境与请求特征
    1. 不要使用数据中心代理,优先使用住宅代理IP,IP归属地要和浏览器语言、时区设置匹配
    2. 禁用浏览器的无痕模式,尽可能保留浏览历史、Cookie等数据,模拟真实用户的日常使用环境
    3. 可以随机开启一些无关的标签页,在操作登录前模拟少量滚动页面、点击无关区域的行为,降低操作的目的性
  • 特殊指纹随机化
    如果上述操作仍然被拦截,可以配置浏览器随机化Canvas、WebGL、字体等硬件指纹,避免因为固定指纹被拉黑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 17:48:04