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

使用Python Jupyter Notebook爬取网页遇JS启用问题求助

解决网页爬取中JS启用提示的问题

问题分析

你添加的--enable-javascript参数其实是多余的,Chrome默认就已开启JavaScript支持。网站弹出该提示,核心原因是你的爬虫浏览器环境被识别为自动化程序,或是无头模式下JS渲染的支持存在缺失。

解决方案

1. 优化Selenium的Chrome配置(若使用Selenium)

如果采用无头模式爬取,旧版--headless参数会导致浏览器环境异常,建议替换为新版无头模式,同时补充模拟正常浏览器的配置:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

chrome_options = Options()
# 新版无头模式,支持完整JS渲染
chrome_options.add_argument("--headless=new")
# 禁用自动化检测,避免被网站识别
chrome_options.add_argument("--disable-blink-features=AutomationControlled")
chrome_options.add_experimental_option("excludeSwitches", ["enable-automation"])
chrome_options.add_experimental_option('useAutomationExtension', False)
# 设置真实用户代理,模拟普通浏览器
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")

driver = webdriver.Chrome(options=chrome_options)
driver.get("目标URL")
# 等待页面完全渲染完成,再获取源码
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.TAG_NAME, "body")))
page_source = driver.page_source
driver.quit()

2. 改用Playwright(更省心的JS渲染方案)

Playwright默认模拟真实浏览器环境,对JS渲染的支持更完善,无需复杂配置:

from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch(headless=True)
    page = browser.new_page(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")
    # 等待网络空闲,确保页面完全加载
    page.goto("目标URL", wait_until="networkidle")
    page_source = page.content()
    browser.close()

3. 确认页面加载时机

很多情况是页面未完全渲染就提前获取源码,导致拿到JS未加载的提示页面。无论用哪种工具,都要等待页面进入稳定状态(比如网络空闲、核心元素出现)后再提取内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 13:52:44