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

Selenium导入Facebook Cookie失败,报InvalidArgumentException错误

解决Facebook Cookie导入的InvalidArgumentException问题

我来帮你排查下问题所在,你遇到的InvalidArgumentException主要是两个关键操作错误导致的,咱们逐个解决:

1. 错误:Cookies变量是字符串而非可操作的列表

你现在把cookies存成了一个被双引号包裹的字符串,Python会把它当成普通文本处理,而不是可遍历的列表对象。当你循环for cookie in cookies时,实际上是在逐个遍历字符串的每个字符,这完全不是你想要的操作。

修正方法:
把字符串转换成Python列表,你可以用ast.literal_eval()来安全解析这个字符串,或者直接去掉外层双引号,把它定义成原生列表。

2. 错误:add_cookie的参数格式不对

driver.add_cookie()不需要你把cookie包装在{'cookie': cookie}里,它本身就接受一个包含cookie属性(比如domain、name、value)的字典——你获取的每个cookie已经是符合要求的格式了,直接传入即可。

额外注意:添加Cookie前必须先加载目标域名页面

在添加cookie之前,一定要先让浏览器访问Facebook的页面(比如https://facebook.com),这样浏览器才能确认cookie的归属域名,否则会因为域不匹配而失败。


修正后的完整代码示例

from selenium import webdriver
import ast  # 用来解析字符串为列表

driver = webdriver.Chrome()
# 先访问Facebook页面,确保浏览器识别cookie的归属域名
driver.get('https://facebook.com')

# 将字符串格式的cookies转换为Python列表
cookies_str = "[{'domain': '.facebook.com', 'expiry': 1609944355, 'httpOnly': True, 'name': 'fr', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': '19KsJJcu9iZcNDw80.AWUnObiYyWlbmsSbMaAoTBQ3Qkg.BffyYn.EY.AAA.0.0.BffyYq.AWWxZSl5V8s'}, {'domain': '.facebook.com', 'expiry': 1633704358, 'httpOnly': True, 'name': 'xs', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': '4%3A8K8IO-G4AqVxpw%3A2%3A1602168362%3A-1%3A-1'}, {'domain': '.facebook.com', 'expiry': 1633704358, 'httpOnly': False, 'name': 'c_user', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': '100055628751137'}, {'domain': '.facebook.com', 'expiry': 1665240357, 'httpOnly': True, 'name': 'datr', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': 'JyZ_X5OBe55yRMjKU-d8nSYQ'}, {'domain': '.facebook.com', 'expiry': 1602773165, 'httpOnly': False, 'name': 'dpr', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': '1.25'}, {'domain': '.facebook.com', 'expiry': 1602258362, 'httpOnly': True, 'name': 'spin', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': 'r.1002790228_b.trunk_t.1602168365_s.1_v.2_'}, {'domain': '.facebook.com', 'expiry': 1602773164, 'httpOnly': False, 'name': 'wd', 'path': '/', 'sameSite': 'Lax', 'secure': True, 'value': '1036x684'}, {'domain': '.facebook.com', 'expiry': 1665240361, 'httpOnly': True, 'name': 'sb', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': 'JyZ_XwAJTQy5L-W6Ivkp2MBC'}]"
cookies = ast.literal_eval(cookies_str)

# 循环添加每个cookie,直接传入cookie字典
for cookie in cookies:
    # 部分旧版本Selenium不支持sameSite字段,若报错可删除该键
    if 'sameSite' in cookie:
        del cookie['sameSite']
    driver.add_cookie(cookie)

# 重新加载页面,验证cookie是否生效
driver.get('https://facebook.com')

如果还是遇到问题,可以检查下Selenium的版本,或者尝试删除cookie字典里不兼容的字段(比如sameSite)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 15:17:57