Selenium无法获取页面全部Cookie值的问题咨询
各位好,我最近在用Selenium做网页自动化时碰到了个棘手的问题:没法获取到页面的全部Cookie值。先贴出我目前写的代码片段,麻烦大家帮我排查下哪里可能出问题了?
import logging from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.chrome.options import Options from webdriver_manager.chrome import ChromeDriverManager # Configure logging logging.basicConfig(level=logging.INFO) logger = logging.getLogger(__name__) try: # Set Chrome options to headless chrome_options = Options() chrome_options.add_argument("--headless") chrome_options.add_argument("--disable-gpu") chrome_options.add_argument("--window-size=1920,1200") chrome_options.add_argument("--ignore-certificate-errors") chrome_options.add_argument("--disable-extensions") chrome_options.add_argument("--no-sandbox") chrome_options.add_argument("--disable-dev-shm-usage") # Initialize the Chrome driver logger.info("Initializing Chrome WebDriver") service = Service(ChromeDriverManager().install()) driver = webdriver.Chrome(service=service, options=chrome_options) # 后续访问目标页面、尝试获取Cookie的逻辑 driver.get("我的目标页面URL") # 试过等待页面完全加载,甚至用了WebDriverWait等待特定元素 cookies = driver.get_cookies() logger.info(f"当前获取到的Cookie数量:{len(cookies)}") except Exception as e: logger.error(f"执行过程出错:{str(e)}") finally: if 'driver' in locals(): driver.quit()
实际情况是,我调用driver.get_cookies()拿到的Cookie数量比浏览器开发者工具里看到的少一大截,尤其是和用户登录状态相关的Cookie完全没获取到。我已经确认页面已经加载完成,也试过调整等待策略,但结果还是一样。
有没有大佬能帮忙分析下原因?比如是不是我的Chrome配置有遗漏,还是Selenium本身获取Cookie的机制存在什么限制?
备注:内容来源于stack exchange,提问作者Urten




