finvizfinance
Finviz Finance. Information downloader.
What it is and what it does
finvizfinance is a web scraper that extracts financial market data from the FinViz website and returns it as Python objects and pandas DataFrames. It covers individual stock quotes (fundamentals, technical charts, insider trades, news, peer comparisons, ETF holdings), financial news aggregation, insider trading activity, and multi-stock screeners filtered by sector, index, valuation metrics, and technical signals. The package wraps requests and BeautifulSoup to parse HTML and expose FinViz data without requiring an official API.
The package is designed for retail investors and traders who want programmatic access to FinViz's free financial research tools. It depends on pandas for data organization, requests for HTTP, and BeautifulSoup/lxml for HTML parsing. Because it scrapes a third-party website rather than calling an official API, it is inherently fragile: any layout change on FinViz can break the parsers. The last release was recent, but the project shows aging maintenance signals with no commits for several months.
Use it for:
- Build a stock screener that filters S&P 500 companies by sector and valuation metrics, returning results as a DataFrame.
- Fetch fundamental data (P/E, market cap, EPS) and insider trading activity for a ticker to inform buy/sell decisions.
- Aggregate recent financial news and blogs from FinViz into a single feed for market monitoring.
- Compare peer stocks and ETF holders for a given ticker to understand competitive landscape.
- Retrieve technical and fundamental ratings from FinViz analysts for a list of stocks in batch.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Scrapes financial data from FinViz website, providing stock fundamentals, charts, news, insider trading info, forex and crypto data, plus screeners for comparing multiple stocks.
Yes, if you accept the web-scraping risk. The package is straightforward to install, has no security vulnerabilities, and offers convenient access to FinViz data without writing your own parsers. However, maintenance is aging (223 days since last release), so expect potential breakage if FinViz redesigns their site. Best suited for personal projects or backtesting, not production systems that require high availability.
Install
finvizfinance on PyPI
pip
pip install finvizfinanceuv
uv add finvizfinancepoetry
poetry add finvizfinanceInstalling finvizfinance
Before you install
Low install friction with four common dependencies (pandas, requests, beautifulsoup4, lxml). Last release was recent (2026-01-03), but maintenance status is aging with no activity for 223 days.
License in practice
MIT License (permissive) allows commercial and private use with minimal restrictions; you may use, modify, and distribute the package freely provided you include the license notice.
Quickstart
pip install finvizfinance
from finvizfinance.quote import finvizfinance
stock = finvizfinance('tsla')
fundamentals = stock.ticker_fundament()
Requires Python 3.9 or later. Depends on external FinViz website structure remaining stable; web scraping is fragile to layout changes.
Verify before relying
- Whether FinViz actively blocks or rate-limits automated scraping requests.
- How often the package maintainer updates it when FinViz changes their website layout.
- Whether the screener and group features work reliably across all filter combinations.
Package facts
| License | The MIT License (MIT) (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — pandas, requests, beautifulsoup4, lxml |
| Maintenance | aging — 223 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 160,272/month — #10,668 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: finvizfinance-1.3.0-py3-none-any.whl
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
finnhub-pythonFinnhub-python is a client library for the…
permissive · top 15,000 on PyPI
metatrader5Connects Python to MetaTrader 5 Terminal to…
permissive · top 15,000 on PyPI
yfinanceFetches financial and market data from Yahoo…
permissive · top 1,000 on PyPI
python-jobspyScrapes job postings from LinkedIn, Indeed,…
unclear · top 15,000 on PyPI
tradingview-screenerQuery TradingView's screener API to retrieve…
permissive · top 15,000 on PyPI
tradingview-taRetrieves technical analysis indicators and…
permissive · top 15,000 on PyPI
pykrxScrapes Korean stock and bond market data from…
permissive · top 15,000 on PyPI
investor-agentProvides financial research tools as an MCP…
permissive · top 15,000 on PyPI
edgartoolsEdgarTools parses SEC EDGAR filings into typed…
permissive · top 5,000 on PyPI
yahooqueryRetrieves financial data from Yahoo Finance…
permissive · top 15,000 on PyPI