favicon
Get a website's favicon.
Decision gist · record as of 2026-08-14
Yes, if you need favicon extraction and can tolerate dormant maintenance. The library is stable and has no known vulnerabilities, but it hasn't been updated since 2019—verify that its favicon discovery logic still covers your target websites. Low install friction and permissive licensing make it a low-risk addition.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low install friction with two common dependencies (requests and beautifulsoup4).
- Maintenance is dormant—last release was 2019-08-31, though the repository remains unarchived.
License · maintenance · safety
MIT (permissive) — MIT license is permissive; you can use, modify, and distribute this package freely with minimal restrictions.
last release 2019-08-31 (2540 days) · last repo commit 2023-12-05 · 59 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 406,639 downloads/mo, #6,895 on PyPI
Alternatives
Verify before relying
pip install favicon
import favicon
icons = favicon.get('https://www.python.org/')
for icon in icons:
print(icon.url, icon.width, icon.height, icon.format)- Whether the package handles modern favicon discovery methods (e.g., webmanifest.json, SVG favicons) added after 2019
- Current compatibility with recent versions of beautifulsoup4 and requests, given the dormant maintenance status
What it is and what it does
favicon is a Python library that discovers and extracts favicon metadata from websites. It fetches a website's HTML, parses link and meta tags to locate favicon references, and returns a list of Icon objects containing the URL, dimensions, and format of each icon found. The library wraps requests and beautifulsoup4 to handle the HTTP fetching and HTML parsing.
You use it by calling favicon.get() with a URL, optionally passing request parameters like headers or timeout. The function returns Icon objects you can iterate over or filter by size. It's designed for scenarios where you need to programmatically retrieve favicon URLs for display, caching, or analysis—for example, building a bookmark manager, website metadata aggregator, or favicon cache.
Use it for
- Bulk-download favicons for a list of URLs to build a local icon cache for a web application
- Extract favicon URLs from bookmarks or website directories for display in a custom browser or dashboard
- Analyze favicon metadata (dimensions, format) to identify high-resolution icons for archival or comparison
- Populate website metadata in a content aggregator or link-sharing tool with visual branding
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need favicon extraction and can tolerate dormant maintenance.
The library is stable and has no known vulnerabilities, but it hasn't been updated since 2019—verify that its favicon discovery logic still covers your target websites. Low install friction and permissive licensing make it a low-risk addition.
Install
favicon on PyPI
Before you install
Low install friction with two common dependencies (requests and beautifulsoup4). Maintenance is dormant—last release was 2019-08-31, though the repository remains unarchived.
License in practice
MIT license is permissive; you can use, modify, and distribute this package freely with minimal restrictions.
Quickstart
pip install favicon
import favicon
icons = favicon.get('https://www.python.org/')
for icon in icons:
print(icon.url, icon.width, icon.height, icon.format)
Verify before relying
- Whether the package handles modern favicon discovery methods (e.g., webmanifest.json, SVG favicons) added after 2019
- Current compatibility with recent versions of beautifulsoup4 and requests, given the dormant maintenance status
Package facts
| License | MIT permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesrequestsbeautifulsoup4 |
| Maintenance | Dormant 2,540 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 406,639 / month, #6,895 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: Microsoft :: WindowsOperating System :: POSIXOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: Implementation :: PyPyTopic :: Internet :: WWW/HTTPTopic :: Utilities |
Evidence: favicon-0.7.0-py2.py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “extract website favicon”
- faviconFetches and parses a website's favicon from its HTML, returning icon…
- linkpreviewExtracts preview metadata (title, description, image, site name,…
- sphinx-faviconA Sphinx extension that injects custom favicon link tags into HTML…
Give your agent the search over MCP, or paste the wish link into any chat.
More WWW/HTTP packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
h11 is a pure-Python HTTP/1.1 protocol implementation that handles parsing and serializing HTTP messages without any built-in I/O, letting you integrate it with any network layer you choose.
HTTPX is a fully featured HTTP client library for Python that provides both sync and async APIs, with support for HTTP/1.1 and HTTP/2, plus an integrated command-line client.
Install it if you are building new projects or modernizing existing ones that rely on HTTP.
A minimal low-level HTTP client library that sends HTTP requests with thread-safe and task-safe connection pooling, supporting HTTP/1.1, HTTP/2, proxies, and both sync and async interfaces.
aiohttp is an async HTTP client and server framework built on asyncio, supporting both WebSockets and middleware-based routing for building concurrent web applications.
Install it if you need async HTTP client or server capabilities in asyncio-based applications.
See also sphinx-favicon · linkpreview · Flask-Silk · beautifulsoup4 · fontawesomefree · imagesize · faicons · pyconify · streamlit-avatar · latest-user-agents