Python Selenium中--headless参数失效,浏览器窗口仍弹出如何解决?
问题解决:Edge浏览器添加--headless后仍弹出窗口
你的代码核心问题是创建Edge驱动实例时未传入配置好的options参数,导致headless模式的设置没有被应用。
修正步骤:
- 在初始化
webdriver.Edge()时,添加options=self.edge_options参数,让驱动加载你的无头配置。 - 对于新版Edge浏览器,推荐使用
--headless=new参数(比旧的--headless兼容性更好)。
修正后的代码如下:
def extract_data(self, usrname : str): self.edge_options = Options() # 推荐使用新版无头模式参数 self.edge_options.add_argument("--headless=new") # 可选:添加禁用GPU等参数,减少资源占用 self.edge_options.add_argument("--disable-gpu") self.edge_options.add_argument("--no-sandbox") self.usrname = usrname service = Service(executable_path=r'C:\web\msedgedriver.exe') # 关键:传入options参数 self.driver = webdriver.Edge(service=service, options=self.edge_options) self.driver.get(f'https://leetcode.com/{usrname}/')
这样修改后,Edge浏览器就会以无头模式后台运行,不会弹出窗口。
内容的提问来源于stack exchange,提问作者Praveen Kumar
相关产品推荐
相关产品推荐

