Getting or Manipulating all cookies in Selenium Webdriver

寵の児 提交于 2020-01-14 07:22:23

问题


Trying to mess with cookies using Chromedriver with Python (or Java).

I've figured out that

for cookie in browser.get_cookies():
    print(cookie['name'] + ' --> ' + cookie['value'])

only gives me the cookies relevant to the active page my browser's on.

Is there any method I can, using either Selenium or native Python (on Ubuntu, if I need to go into the file system), get all of the cookies on my active selenium session?


回答1:


You can provide a userdir and extract the cookies from there.

co = webdriver.ChromeOptions()
co.add_argument("--user-data-dir=userdir")
browser = webdriver.Chrome(chrome_options = co) 

The cookies will end up in userdir/Default/Cookies which is an SQLite3 database.




回答2:


Why don't you just use some http libraries with cookie inspection

import urllib2
import cookielib

cookieJar = cookielib.CookieJar()

opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookieJar),urllib2.HTTPHandler())
opener.get_method = lambda: 'GET'

request = urllib2.Request('http://stackoverflow.com/')
response = opener.open(request)

for cookie in cookieJar:
   print cookie


来源:https://stackoverflow.com/questions/13404670/getting-or-manipulating-all-cookies-in-selenium-webdriver

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!