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

Python如何爬取启用JavaScript的网页并获取悬浮框元素

问题原因

你用requests无法拿到业务数据是因为目标页面属于客户端渲染(CSR)类型:初始返回的HTML只有页面骨架和元数据,所有业务数据都是页面加载完成后由JS异步请求渲染生成的,悬浮框、点击触发的内容更是需要用户交互后才会渲染到DOM结构里,静态HTTP请求自然无法获取这类内容。

解决方案
  • 方案1:使用无头浏览器模拟真实交互(最适配你的需求)
    你可以用Selenium、Playwright这类工具模拟真实浏览器的运行逻辑,支持等待异步渲染、模拟点击、模拟鼠标悬浮等操作,直接拿到渲染完成后的全量DOM内容,操作门槛最低。
    首先安装依赖:
    pip install selenium webdriver-manager
    示例代码如下:

    from selenium import webdriver
    from selenium.webdriver.chrome.service import Service
    from selenium.webdriver.common.by import By
    from selenium.webdriver.common.action_chains import ActionChains
    from webdriver_manager.chrome import ChromeDriverManager
    import time
    
    # 配置无头浏览器参数
    chrome_options = webdriver.ChromeOptions()
    chrome_options.add_argument("--headless=new") # 启用无头模式,不弹出浏览器窗口
    chrome_options.add_argument("--disable-blink-features=AutomationControlled") # 规避基础反爬检测
    driver = webdriver.Chrome(service=Service(ChromeDriverManager().install()), options=chrome_options)
    
    # 打开目标页面
    target_url = "https://cronoschimp.club/market/details/2424?isHonorary=false"
    driver.get(target_url)
    time.sleep(3) # 等待页面全量渲染,可替换为显式等待提升效率
    
    # 获取全量页面文本内容
    full_page_text = driver.find_element(By.TAG_NAME, "body").text
    # 也可以用driver.page_source获取完整HTML结构自行解析
    
    # 模拟鼠标悬浮获取悬浮框内容示例
    # 替换为你需要悬浮的元素的CSS选择器
    hover_ele = driver.find_element(By.CSS_SELECTOR, "目标悬浮元素的CSS选择器")
    ActionChains(driver).move_to_element(hover_ele).perform()
    time.sleep(1) # 等待悬浮框渲染完成
    popover_content = driver.find_element(By.CSS_SELECTOR, "悬浮框元素的CSS选择器").text
    print(popover_content)
    
    # 模拟点击操作示例
    # click_ele = driver.find_element(By.CSS_SELECTOR, "目标点击元素的CSS选择器")
    # click_ele.click()
    
    # 关闭浏览器
    driver.quit()
    
  • 方案2:直接抓异步接口请求
    如果你追求更高的爬取效率,可以打开浏览器F12开发者工具的「网络」面板,筛选「Fetch/XHR」类型的请求,刷新页面后找到返回业务数据的接口,梳理接口的请求参数、鉴权规则后直接用requests调用接口拿数据,不需要启动浏览器,性能更高,但需要额外梳理交互触发接口的参数逻辑,适配成本比方案1高。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 22:45:03