# 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