{
"info": {
"author": "Scott Werner",
"author_email": "scott.werner.vt@gmail.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX",
"Operating System :: Unix",
"Programming Language :: Python",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.4",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: Implementation :: PyPy",
"Topic :: Internet :: WWW/HTTP",
"Topic :: Utilities"
],
"description": "========\nfavicon\n========\n\n\n\n``favicon`` is a Python library to find a website's favicon.\n\nInstallation\n============\n\n.. code-block:: bash\n\n pip install favicon\n\nUsage\n=====\n\nGet all icons:\n\n.. code-block:: python\n\n >>> import favicon\n >>> icons = favicon.get('https://www.python.org/')\n Icon(url='https://www.python.org/static/apple-touch-icon-144x144-precomposed.png', width=144, height=144, format='png')\n Icon(url='https://www.python.org/static/apple-touch-icon-114x114-precomposed.png', width=114, height=114, format='png')\n Icon(url='https://www.python.org/static/apple-touch-icon-72x72-precomposed.png', width=72, height=72, format='png')\n Icon(url='https://www.python.org/static/apple-touch-icon-precomposed.png', width=0, height=0, format='png')\n Icon(url='https://www.python.org/static/favicon.ico', width=0, height=0, format='ico')\n\nDownload largest icon:\n\n.. code-block:: python\n\n import requests\n import favicon\n\n icons = favicon.get('https://www.python.org/')\n icon = icons[0]\n\n response = requests.get(icon.url, stream=True)\n with open('/tmp/python-favicon.{}'.format(icon.format), 'wb') as image:\n for chunk in response.iter_content(1024):\n image.write(chunk)\n\n # /tmp/python-favicon.png\n\n`Request library `_ parameters can be passed to `favicon.get()` as keyword\narguments:\n\n.. code-block:: python\n\n import favicon\n\n user_agent = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.47 Safari/537.36'\n headers = {'User-Agent': user_agent}\n favicon.get('https://www.python.org/', headers=headers, timeout=2)\n\nRequirements\n============\n\n* `requests `_\n* `beautifulsoup4 `_\n\nInspiration\n===========\n\n* `pyfav `_\n* `besticon `_\n* `How to get high resolution website logo (favicon) for a given URL `_\n\nChangelog\n=========\n\n0.7.0 (2019-08-31)\n------------------\n\n* Handle empty `href` and `content` attribute values (`#22 `_).\n* Support passing request library parameters to `favicon.get()` (`#21 `_).\n\n * Deprecate `headers` argument. Use keyword arguments: `favicon.get(url, headers={'User-Agent'; 'my-agent'}`.\n\n0.6.0 (2019-08-10)\n------------------\n\n* Upgrade ``beautifulsoup4`` and ``requests`` package dependencies.\n\n0.5.1 (2018-11-05)\n------------------\n\n* Fix 'NoneType' object has no attribute 'lower' for meta tags (`#16 `_).\n\n0.5.0 (2018-11-05)\n------------------\n\n* Add support for meta tags (`#15 `_).\n* Set bs4 parser to ``html.parser`` (`#13 `_).\n* Use ``src`` package structure (`#11 `_).\n\n0.4.1 (2018-10-01)\n------------------\n\n* Update ``requirements.txt`` and ``dev-requirements.txt``.\n\n0.4.0 (2018-07-19)\n------------------\n\n* Add support for Python 2.7 and PyPy.\n* Get icon size for New York Times (`#9 `_).\n\n0.3.0 (2018-05-18)\n------------------\n\n* Fav icon not found for microsoft.com (`#7 `_).\n\n0.2.0 (2018-05-17)\n------------------\n\n* Handle poor html values in links (`#5 `_).\n* Use given website for icon url scheme (`#6 `_).\n\n0.1.0 (2018-05-07)\n------------------\n\n* First release.\n\n\n",
"description_content_type": "",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/scottwernervt/favicon",
"keywords": "favicon icon",
"license": "MIT",
"maintainer": "",
"maintainer_email": "",
"name": "favicon",
"package_url": "https://pypi.org/project/favicon/",
"platform": "",
"project_url": "https://pypi.org/project/favicon/",
"project_urls": {
"Homepage": "https://github.com/scottwernervt/favicon"
},
"release_url": "https://pypi.org/project/favicon/0.7.0/",
"requires_dist": [
"requests (>=2.21.0)",
"beautifulsoup4 (>=4.7.0)"
],
"requires_python": "",
"summary": "Get a website's favicon.",
"version": "0.7.0"
},
"last_serial": 5764752,
"releases": {
"0.1.0": [
{
"comment_text": "",
"digests": {
"md5": "13a0b64dc04a5f3b399638beb1ed3e4a",
"sha256": "4f7d48d85a027dd9f69cbe5013102deecc6161144af31361d9000dcd6dd8181d"
},
"downloads": -1,
"filename": "favicon-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "13a0b64dc04a5f3b399638beb1ed3e4a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 5810,
"upload_time": "2018-05-07T14:25:12",
"url": "https://files.pythonhosted.org/packages/7c/db/03d882043e1a325554e842d83f1577bb2e53b2ac9dea82256ee449b07f5e/favicon-0.1.0-py3-none-any.whl"
}
],
"0.2.0": [
{
"comment_text": "",
"digests": {
"md5": "f11d68c535e1f5251cee26ffadff945b",
"sha256": "8a1f276b32b83563136f94332f017d15b13c0d305e246a78ad5ec2d4909e9a39"
},
"downloads": -1,
"filename": "favicon-0.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f11d68c535e1f5251cee26ffadff945b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 6142,
"upload_time": "2018-05-17T19:18:57",
"url": "https://files.pythonhosted.org/packages/8c/48/4db6e8e08664968fd287add6c7f161e5dfc47f618f05f12c58bfbfa682cd/favicon-0.2.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "bccba6fc7496e31147cb542cf213f1e6",
"sha256": "2369632e468a3833b4365dae0b8a1efe783c1530924c3c0c1f27afc3bb700ad7"
},
"downloads": -1,
"filename": "favicon-0.2.0.tar.gz",
"has_sig": false,
"md5_digest": "bccba6fc7496e31147cb542cf213f1e6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 6585,
"upload_time": "2018-05-17T19:18:59",
"url": "https://files.pythonhosted.org/packages/74/77/7e26f53f0de0508eda37dda070a634ee2fd6600936749c6c2dd7a800c2fb/favicon-0.2.0.tar.gz"
}
],
"0.3.0": [
{
"comment_text": "",
"digests": {
"md5": "fd975ce4b1b60447f93e463721d43197",
"sha256": "01602263e9431761bc355eebc1940f325977719980240536c9cdf412be60ea21"
},
"downloads": -1,
"filename": "favicon-0.3.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "fd975ce4b1b60447f93e463721d43197",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 6313,
"upload_time": "2018-05-19T02:32:39",
"url": "https://files.pythonhosted.org/packages/f4/d5/821e1d464cdff999d268a40a5650a0156c9870a4875e4ba9f60bf1b70de2/favicon-0.3.0-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "06217ad9c07dad723485866ff881d4da",
"sha256": "06104431a131b936eaa9c1a2e0c9a4d3b4c6cbf7678af9f360604dc1f00754fa"
},
"downloads": -1,
"filename": "favicon-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "06217ad9c07dad723485866ff881d4da",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7119,
"upload_time": "2018-05-19T02:32:40",
"url": "https://files.pythonhosted.org/packages/1a/33/f4190f6604f191afb3ca59021b50b0187c36d307f3ce900643c8d3b7f364/favicon-0.3.0.tar.gz"
}
],
"0.4.0": [
{
"comment_text": "",
"digests": {
"md5": "527d59f2950f086a7c3b925385fa60f6",
"sha256": "d4463013f167227e50cc3a918118ef26e2bf899909effd943f649b347e868385"
},
"downloads": -1,
"filename": "favicon-0.4.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "527d59f2950f086a7c3b925385fa60f6",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 6470,
"upload_time": "2018-07-19T16:53:56",
"url": "https://files.pythonhosted.org/packages/b2/70/df3bb9122bb1324f7d02f96e6287d1fcfc7ad9be0ed03c2ae311b9c928ae/favicon-0.4.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "2256b93b7b7e8dda89ed8ff8b7a57379",
"sha256": "e7aebf61cdb28f1f46fe00472332849ffdab72946fb536662405a594a9929db5"
},
"downloads": -1,
"filename": "favicon-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "2256b93b7b7e8dda89ed8ff8b7a57379",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7208,
"upload_time": "2018-07-19T16:53:57",
"url": "https://files.pythonhosted.org/packages/c9/b8/4a9b0e0e8ecf6986bd4299bba0a2b67f3647bc755cd7798d825313495147/favicon-0.4.0.tar.gz"
}
],
"0.4.1": [
{
"comment_text": "",
"digests": {
"md5": "9eec60f3415b18b42e5291bd131a7e61",
"sha256": "3b1c7b3d050efc811d9a03479f2867193ec52b212ac3d34045f1f0f9f8e20e7a"
},
"downloads": -1,
"filename": "favicon-0.4.1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "9eec60f3415b18b42e5291bd131a7e61",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 6468,
"upload_time": "2018-10-01T14:40:24",
"url": "https://files.pythonhosted.org/packages/38/cb/07e52507fce7f54db7d7490c26770193310f9a2976d802007259fe9c74ca/favicon-0.4.1-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "6a5bb392c19a93863f4dc6eb58bddb93",
"sha256": "ef9c3558a41f012f35ca001e514f95f2ddd5d0ed5f8cdd7ef8f84f59f6003512"
},
"downloads": -1,
"filename": "favicon-0.4.1.tar.gz",
"has_sig": false,
"md5_digest": "6a5bb392c19a93863f4dc6eb58bddb93",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7239,
"upload_time": "2018-10-01T14:40:26",
"url": "https://files.pythonhosted.org/packages/45/3e/4c88314b94292f0a95ab41792818d55e4183a81c6d7174eb8fe7ecafe1cd/favicon-0.4.1.tar.gz"
}
],
"0.5.1": [
{
"comment_text": "",
"digests": {
"md5": "a96b749253380f72e318881519f72801",
"sha256": "a769ab2a6693f03aceac4de01b1774cbc5241e41902e6c26a6ec7e91ca3ae38a"
},
"downloads": -1,
"filename": "favicon-0.5.1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "a96b749253380f72e318881519f72801",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 5564,
"upload_time": "2018-11-05T16:10:14",
"url": "https://files.pythonhosted.org/packages/f5/51/2e531055e96e918b24eee412e39d38d7007e300be072c25975013d4e65a8/favicon-0.5.1-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "75db2793365957023f72cbeb652a8ea9",
"sha256": "3e1913cab726bd23c02105dadab47f2e7ec39b45f12e6fbe106ee16c8d595006"
},
"downloads": -1,
"filename": "favicon-0.5.1.tar.gz",
"has_sig": false,
"md5_digest": "75db2793365957023f72cbeb652a8ea9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8654,
"upload_time": "2018-11-05T16:10:15",
"url": "https://files.pythonhosted.org/packages/70/a4/d8376725ced4b4ffb8abab1a95fe3419d3e3fd9f3ed5f2fa19d4c4b75bc9/favicon-0.5.1.tar.gz"
}
],
"0.6.0": [
{
"comment_text": "",
"digests": {
"md5": "6f0aa00233ab2cb0402034b1e931e80f",
"sha256": "e7aee738506cca740c4210bd724957b9225f3e27d742054a5b2859cc4eb8573c"
},
"downloads": -1,
"filename": "favicon-0.6.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "6f0aa00233ab2cb0402034b1e931e80f",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 5603,
"upload_time": "2019-08-10T16:57:31",
"url": "https://files.pythonhosted.org/packages/db/4a/e00275f3651dbbfaedba4190a02a7d8848d0b4acf4dde273157487b9af1e/favicon-0.6.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "4ec4a5e7142b47ae94a117e8ca9324d2",
"sha256": "44515c03895be8b252f22643748a677b4dbec49dc4555922036297c066c364b3"
},
"downloads": -1,
"filename": "favicon-0.6.0.tar.gz",
"has_sig": false,
"md5_digest": "4ec4a5e7142b47ae94a117e8ca9324d2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 8710,
"upload_time": "2019-08-10T16:57:32",
"url": "https://files.pythonhosted.org/packages/5b/cc/1ea937a867e56f2b46f13a39649c4f7b3d7ec0942e51755abb3512ee54bf/favicon-0.6.0.tar.gz"
}
],
"0.7.0": [
{
"comment_text": "",
"digests": {
"md5": "7c2571884d68b52cb5a81bc87b7b4a8e",
"sha256": "7fec0617c73dcb8521ea788e1d38cdc7226c7cb8e28c81e11625d85fa1534880"
},
"downloads": -1,
"filename": "favicon-0.7.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "7c2571884d68b52cb5a81bc87b7b4a8e",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 5921,
"upload_time": "2019-08-31T16:56:40",
"url": "https://files.pythonhosted.org/packages/93/4c/8baf94bb789972634d933152d27529f2bad4e5d2397b8da9c30f6f5342ce/favicon-0.7.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "7f5928d0cda8b6dd79b0452942fe57f5",
"sha256": "6d6b5a78de2a0d0084589f687f384b2ecd6a6527093fec564403b1a30605d7a8"
},
"downloads": -1,
"filename": "favicon-0.7.0.tar.gz",
"has_sig": false,
"md5_digest": "7f5928d0cda8b6dd79b0452942fe57f5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9284,
"upload_time": "2019-08-31T16:56:42",
"url": "https://files.pythonhosted.org/packages/64/68/d2646f40c05d3a501cddd232119f8c087a6fcba3c79255a062c73e80b42a/favicon-0.7.0.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "7c2571884d68b52cb5a81bc87b7b4a8e",
"sha256": "7fec0617c73dcb8521ea788e1d38cdc7226c7cb8e28c81e11625d85fa1534880"
},
"downloads": -1,
"filename": "favicon-0.7.0-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "7c2571884d68b52cb5a81bc87b7b4a8e",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 5921,
"upload_time": "2019-08-31T16:56:40",
"url": "https://files.pythonhosted.org/packages/93/4c/8baf94bb789972634d933152d27529f2bad4e5d2397b8da9c30f6f5342ce/favicon-0.7.0-py2.py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "7f5928d0cda8b6dd79b0452942fe57f5",
"sha256": "6d6b5a78de2a0d0084589f687f384b2ecd6a6527093fec564403b1a30605d7a8"
},
"downloads": -1,
"filename": "favicon-0.7.0.tar.gz",
"has_sig": false,
"md5_digest": "7f5928d0cda8b6dd79b0452942fe57f5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9284,
"upload_time": "2019-08-31T16:56:42",
"url": "https://files.pythonhosted.org/packages/64/68/d2646f40c05d3a501cddd232119f8c087a6fcba3c79255a062c73e80b42a/favicon-0.7.0.tar.gz"
}
]
}