Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将Cookie导入Selenium不';行不通_Python_Selenium_Selenium Webdriver_Cookies_Selenium Chromedriver - Fatal编程技术网

Python 将Cookie导入Selenium不';行不通

Python 将Cookie导入Selenium不';行不通,python,selenium,selenium-webdriver,cookies,selenium-chromedriver,Python,Selenium,Selenium Webdriver,Cookies,Selenium Chromedriver,登录Facebook后,我使用方法driver.get\u cookies() 输出: [{'domain': '.facebook.com', 'expiry': 1609944355, 'httpOnly': True, 'name': 'fr', 'path': '/', 'sameSite': 'None', 'secure': True, 'value': '19KsJJcu9iZcNDw80.AWUnObiYyWlbmsSbMaAoTBQ3Qkg.BffyYn.EY.AAA.0.0

登录Facebook后,我使用方法
driver.get\u cookies()

输出:


[{'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
中,当我试图通过
驱动程序导入cookies.add\u cookie()
方法时,我得到一个异常:

InvalidArgumentException
Message: invalid argument: missing 'cookie'
  (Session info: chrome=85.0.4183.121)
守则:

driver = webdriver.Chrome()
driver.get('https://facebook.com')

cookies = "[{'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'}]"

driver.add_cookie(cookies)
driver.get('https://facebook.com')
尝试在循环中添加:

for cookie in cookies:
  driver.add_cookie({'cookie' : cookie})
没什么帮助。。。我做错了什么


附言:我已经看到了

事实上,你就快到了

此函数的参数
add\u cookie(cookie\u dict)
的格式为dictionary格式,因此在使用cookie之前,请先将cookie解析到dictionary中

请尝试以下代码:

cookies=[{'domain':'.facebook.com','expiration':1609944355,'httpOnly':True,'name':'fr','path':'/','sameSite':'None','secure':True,'value':'19KsJJcu9iZcNDw80.awunobiywlbmssbmaaotbq3qkg.BffyYn.EY.AAA.0.0.bffyyyq.awwzsl5v8s'},{'domain':'.facebook.com','expirement':1633704358',httpOnly':True,'name':'xs','path':'/','sameSite':'None','secure':True,'value':'4%3A8K8IO-G4AqVxpw%3A2%3A1602168362%3A-1%3A-3A-1'},{'domain':'.facebook.com','expirement':1633704358,'httpOnly':False,'name':'c_user','path':'/','sameSite':'None','secure':True,'value':'100055628751137'},{'domain':'.facebook.com','expirement':1665240357,'httpOnly':True,'name':'datr','path':'/','sameSite':'None','secure','True','value':'JyZ,{'domain':'.facebook.com','expirement':1602773165,'httpOnly':False,'name':'dpr','path':'/','sameSite':'None','secure':True,'value':'1.25},{'domain':'.facebook.com','expirement':1602258362,'httpOnly':True,'name':'spin','path':'/','sameSite':'None','secure':True,'value':'r.1002790228,{'domain':'.facebook.com','expiration':1602773164,'httpOnly':False,'name':'wd','path':'/','sameSite':'Lax','secure':True,'value':'1036x684'},{'domain':'.facebook.com','expiration':1665240361,'httpOnly':True,'name':'sb','path':':'/','sameSite':'None','secure','secure','True,'value':'JyZ
对于cookie中的cookie:
驱动程序。添加cookie(cookie)

事实上,你就快到了

此函数的参数
add\u cookie(cookie\u dict)
的格式为dictionary格式,因此在使用cookie之前,请先将cookie解析到dictionary中

请尝试以下代码:

cookies=[{'domain':'.facebook.com','expiration':1609944355,'httpOnly':True,'name':'fr','path':'/','sameSite':'None','secure':True,'value':'19KsJJcu9iZcNDw80.awunobiywlbmssbmaaotbq3qkg.BffyYn.EY.AAA.0.0.bffyyyq.awwzsl5v8s'},{'domain':'.facebook.com','expirement':1633704358',httpOnly':True,'name':'xs','path':'/','sameSite':'None','secure':True,'value':'4%3A8K8IO-G4AqVxpw%3A2%3A1602168362%3A-1%3A-3A-1'},{'domain':'.facebook.com','expirement':1633704358,'httpOnly':False,'name':'c_user','path':'/','sameSite':'None','secure':True,'value':'100055628751137'},{'domain':'.facebook.com','expirement':1665240357,'httpOnly':True,'name':'datr','path':'/','sameSite':'None','secure','True','value':'JyZ,{'domain':'.facebook.com','expirement':1602773165,'httpOnly':False,'name':'dpr','path':'/','sameSite':'None','secure':True,'value':'1.25},{'domain':'.facebook.com','expirement':1602258362,'httpOnly':True,'name':'spin','path':'/','sameSite':'None','secure':True,'value':'r.1002790228,{'domain':'.facebook.com','expiration':1602773164,'httpOnly':False,'name':'wd','path':'/','sameSite':'Lax','secure':True,'value':'1036x684'},{'domain':'.facebook.com','expiration':1665240361,'httpOnly':True,'name':'sb','path':':'/','sameSite':'None','secure','secure','True,'value':'JyZ
对于cookie中的cookie:
驱动程序。添加cookie(cookie)

是的,它可以工作。但是如果我将cookie转换为字符串,那么如何将该字符串转换为列表?例如,如果我从文件中获取cookie,则方法驱动程序。get_cookies()需要字典形式的参数。该方法不关心如何或从何处获取字典,因此无论从文件、字符串或列表获取Cookie,请记住将其更改为字典。这取决于特定场景,我无法提供更多详细信息。是的,它可以工作。但如果我将Cookie转换为字符串,那么我如何转换它尝试列表?例如,如果我从一个文件中获取cookie,那么方法driver.get_cookies()需要字典形式的参数。该方法不关心如何或从何处获取字典,因此无论从文件、字符串或列表获取cookie,请记住将其更改为字典。这取决于特定场景,我无法提供更多详细信息。