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

Selenium调用driver.get_cookies()访问name属性触发AttributeError

问题原因

Selenium的driver.get_cookies()接口返回值为字典组成的列表,每个Cookie项都是字典类型,只能通过[键名]的方式取值,不能通过.属性名的方式访问。
你之前能运行成功大概率是之前使用的Selenium版本较旧,旧版本接口返回的是Cookie实例对象,支持.name/.value的属性访问方式,升级Selenium后接口逻辑调整,就会触发这个属性不存在的报错。

修复方案

只需要修改你代码中拼接cookie_list的那一行,把属性访问改为字典取值即可:
把原有代码:

cookie_list = list(map(lambda h: h.name+'='+h.value+'; ', driver.get_cookies()))

替换为:

cookie_list = list(map(lambda h: h['name']+'='+h['value']+'; ', driver.get_cookies()))

如果要更简洁也可以用列表推导式写法:

cookie_list = [f"{cookie['name']}={cookie['value']}; " for cookie in driver.get_cookies()]

可选优化建议

你后续用requests发送请求时,不需要自己手动拼接Cookie头,直接调用session的add_cookie方法添加Cookie更稳妥,不会出现格式错误:

s = req.session()
for cookie in driver.get_cookies():
    s.cookies.set(cookie['name'], cookie['value'], domain=cookie['domain'], path=cookie['path'])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 06:36:03