# browsercookie **Repository Path**: mcgrady164/browsercookie ## Basic Information - **Project Name**: browsercookie - **Description**: asfalfjalfjalfjlfjalsfjlafjlaflaal - **Primary Language**: Unknown - **License**: LGPL-2.1 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-11-02 - **Last Updated**: 2023-11-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Browser Cookie ============== The **browsercookie** module loads cookies used by your web browser into a cookiejar object. This can be useful if you want to use python to download the same content you see in the web browser without needing to login. Install ------- .. sourcecode:: bash pip install browsercookie On Windows the builtin sqlite module will raise an error when loading the FireFox database. An updated version of sqlite can be installed with: .. sourcecode:: bash pip install pysqlite Usage ----- Here is a hack to extract the title from a webpage: .. sourcecode:: python >>> import re >>> get_title = lambda html: re.findall('(.*?)', html, flags=re.DOTALL)[0].strip() And here is the webpage title when downloaded normally: .. sourcecode:: python >>> import urllib2 >>> url = 'https://bitbucket.org/' >>> public_html = urllib2.urlopen(url).read() >>> get_title(public_html) 'Git and Mercurial code management for teams' Now let's try with **browsercookie** - make sure you are logged into Bitbucket in Firefox before trying this example: .. sourcecode:: python >>> import browsercookie >>> cj = browsercookie.firefox() >>> opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) >>> login_html = opener.open(url).read() >>> get_title(login_html) 'richardpenman / home — Bitbucket' Differences with Python3: .. sourcecode:: python >>> import urllib.request >>> public_html = urllib.request.urlopen(url).read() >>> opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cj)) You should see your own username here, meaning the module successfully loaded the cookies from Firefox. Here is an alternative example with `requests `__, this time loading the Chrome cookies. Again make sure you are logged into Bitbucket in Chrome before running this: .. sourcecode:: python >>> import requests >>> cj = browsercookie.chrome() >>> r = requests.get(url, cookies=cj) >>> get_title(r.content) 'richardpenman / home — Bitbucket' Alternatively if you don't know/care which browser has the cookies you want then all available browser cookies can be loaded: .. sourcecode:: python >>> cj = browsercookie.load() >>> r = requests.get(url, cookies=cj) >>> get_title(r.content) 'richardpenman / home — Bitbucket' Contribute ---------- So far the following platforms are supported: - **Chrome:** Linux, OSX, Windows - **Firefox:** Linux, OSX, Windows However I only tested on a single version of each browser and so am not sure if the cookie sqlite format changes location or format in earlier/later versions. If you experience a problem please `open an issue `__ which includes details of the browser version and operating system. Also patches to support other browsers are very welcome, particularly for Internet Explorer on Windows. Acknowledgements ---------------- * Nathan Henrie for his example of `how to decode the Chrome cookies `__ * Graeme Robinson for his Chrome Windows patch