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

Python Selenium访问gamermarkt站点卡在加载界面如何解决

gamermarkt.com 反爬拦截绕过方案

问题判定

你遇到的持续卡加载是站点挂载的Cloudflare反爬系统拦截了自动化请求,和现有配置的缺陷直接相关:

  • 现有Selenium配置只隐藏了最基础的navigator.webdriver标记,没有覆盖WebGL、Canvas、插件列表、权限特征等多维度的浏览器指纹校验点
  • 配置里写的Chrome 102版本UA属于过旧版本,和当前主流浏览器版本差距过大,会直接被规则标记为异常流量
  • 原生ChromeDriver自带的自动化特征没有被完全抹除,JS校验脚本识别到非人类访问特征后会直接挂起连接,不返回页面内容

可直接运行的解决方案

  • 优先方案:使用undetected-chromedriver替代原生驱动
    这个库专门针对主流反爬系统做了驱动补丁,会自动匹配本地Chrome版本、自动注入反检测脚本,不需要手动拼凑大量参数,稳定性远高于自己改原生Selenium配置。
    先安装依赖:
    pip install undetected-chromedriver
    测试代码:

    import undetected_chromedriver as uc
    
    options = uc.ChromeOptions()
    options.add_argument("--start-maximized")
    # version_main填你本地安装的Chrome大版本号即可,比如装的125版就填125
    driver = uc.Chrome(options=options, version_main=125)
    driver.get("https://www.gamermarkt.com/")
    # 打印页面标题验证是否加载成功
    print(driver.title)
    

    正常运行后会自动通过Cloudflare的5秒检测,不会卡在加载界面。

  • 备选方案:补全原生Selenium的反检测配置
    如果必须使用原生ChromeDriver,先把本地Chrome和ChromeDriver都升级到最新稳定版(124及以上),替换掉旧版UA,补全缺失的反爬参数和启动后注入脚本:

    from selenium import webdriver
    from selenium.webdriver.chrome.options import Options
    
    browserProfile = Options()
    browserProfile.add_argument("--start-maximized")
    browserProfile.add_argument("--disable-blink-features=AutomationControlled")
    # 替换为和你本地Chrome版本完全对应的UA,禁止用过旧版本
    browserProfile.add_argument("--user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36")
    browserProfile.add_argument("--disable-infobars")
    browserProfile.add_argument("--disable-extensions")
    browserProfile.add_argument("--disable-plugins-discovery")
    browserProfile.add_experimental_option("excludeSwitches", ["enable-automation", "enable-logging"])
    browserProfile.add_experimental_option("useAutomationExtension", False)
    browserProfile.add_experimental_option("prefs", {
        "credentials_enable_service": False,
        "profile.password_manager_enabled": False
    })
    
    browser = webdriver.Chrome(options=browserProfile)
    # 注入脚本抹除残留自动化标记
    browser.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
        "source": """
        Object.defineProperty(navigator, 'webdriver', {get: () => undefined});
        Object.defineProperty(navigator, 'plugins', {get: () => Array(5).fill(1)});
        Object.defineProperty(navigator, 'languages', {get: () => ['zh-CN', 'zh', 'en']});
        window.chrome = {runtime: {}};
        """
    })
    browser.get('https://www.gamermarkt.com')
    

    这个方案稳定性弱于undetected-chromedriver,Cloudflare规则更新后大概率失效。

避坑提示

  • 不要用无头模式访问,无头模式的浏览器指纹特征辨识度极高,基本会被直接拦截
  • 页面刚加载完成时不要立刻执行点击、滚动、数据抓取操作,预留3-5秒的停留时间模拟真实用户行为
  • 如果配置完还是被拦截,检查自己使用的IP,机房代理、VPN的IP基本都在Cloudflare高风险IP段,就算指纹完全正常也会被卡在验证环节,更换真实住宅IP即可解决

内容的提问来源于stack exchange,提问作者Gürkan KARADAĞ

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 21:45:34