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

如何在Google Cloud虚拟机上运行带undetected_chromedriver的Python Selenium脚本

问题:undetected_chromedriver在Google Cloud虚拟机无头模式下无法运行

我编写了一个Python Selenium脚本用于爬取目标网站,该网站会拦截原生Selenium,因此只能使用undetected_chromedriver。

脚本在本地环境运行正常,但部署到Google Cloud虚拟机后无法工作——因为undetected_chromedriver似乎必须以非无头模式启动。我需要让脚本在虚拟机上24/7持续运行,但不知道如何调整才能让它在无头模式下正常执行。

以下是我的最简版本脚本:

import undetected_chromedriver as uc
from selenium.webdriver.chrome.options import Options
import time

# 设置Chrome选项
chrome_options = Options()
chrome_options.add_argument("start-maximized") # 最大化视窗
chrome_options.add_experimental_option('excludeSwitches', ['enable-logging', 'enable-automation', 'disable-popup-blocking']) # 禁用弹窗以加速浏览
chrome_options.add_experimental_option("detach", True) # Selenium命令执行完成后保持Chrome窗口打开
chrome_options.add_experimental_option('prefs', {'intl.accept_languages': 'en,en_US'}) # 以英文作为Chrome主要语言
chrome_options.add_argument('--blink-settings=imagesEnabled=false') # 禁用图片加载
chrome_options.add_argument('--disable-extensions') # 禁用扩展
# chrome_options.add_argument("--headless=new") # 无头模式运行Selenium,无法与undetected_chromedriver兼容
chrome_options.add_argument('--no-sandbox') # 禁用沙箱,仅用于测试场景
chrome_options.add_argument('--disable-gpu') # 无头模式兼容设置,新版本Selenium可能无需此参数
chrome_options.add_argument("--window-size=1920x1080") # 设置Chrome窗口尺寸
chrome_options.add_experimental_option('useAutomationExtention', False)

# 全局参数
base_url = "https://otv.verwalt-berlin.de/ams/TerminBuchen"

# 初始化Chrome驱动
driver = uc.Chrome(chrome_options=chrome_options)

# 访问目标网站
driver.get(base_url)

# 最大化窗口
driver.maximize_window()

# 等待5秒后关闭驱动
time.sleep(5)
driver.quit()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 00:12:46