Skip to main content

A powerful Python library for scraping real-time market data, indicators, and ideas from TradingView.

Project description

TV Scraper

Python 3.11+ MIT License

A powerful, real-time Python library for extracting financial data, indicators, and ideas from TradingView.com.


Attribution

This project is based on mnwato/tradingview-scraper. Thanks to the original author for the foundational work.

📚 Documentation

For complete documentation, installation guides, API references, and examples, visit:

📖 Full Documentation

Quick Links


🚀 Quick Start

This library requires Python 3.11+ and uses uv for dependency management.

Installation

Install from PyPI (recommended):

pip install tv-scraper

Or install with uv (developer / alternate):

# Clone the repository for development
git clone https://github.com/smitkunpara/tv-scraper.git
cd tv-scraper
```,oldString:

# Install runtime deps (uv auto-creates virtual environment)
uv sync

If you prefer to install the published package using uv:

uv add tv_scraper

Basic Usage Examples

Fetching Technical Indicators

Get RSI and Stochastic indicators for Bitcoin on Binance:

from tv_scraper import Technicals

# Initialize scraper
technicals = Technicals()

# Scrape indicators for BTCUSD
result = technicals.scrape(
    exchange="BINANCE",
    symbol="BTCUSD",
    timeframe="1d",
    technical_indicators=["RSI", "Stoch.K"]
)

if result["status"] == "success":
    print(result["data"])

Scraping Trading Ideas

Get popular trading ideas for Ethereum:

from tv_scraper import Ideas

# Initialize scraper
ideas = Ideas()

# Scrape popular ideas for ETHUSD
result = ideas.scrape(
    exchange="CRYPTO",
    symbol="ETHUSD",
    start_page=1,
    end_page=1,
    sort_by="popular"
)

if result["status"] == "success":
    print(f"Found {len(result['data'])} ideas.")

✨ Key Features

  • 📊 Real-Time Data: Stream live OHLCV and indicator values via WebSocket
  • 📰 Comprehensive Coverage: Scrape Ideas, News, Market Movers, and Screener data
  • 📈 Fundamental Data: Access detailed financial statements and profitability ratios
  • 🔧 Advanced Tools: Symbol Markets lookup, Symbol Overview, and Minds Community discussions
  • 📋 Structured Output: All data returned as clean JSON/Python dictionaries
  • 🌍 Multi-Market Support: 260+ exchanges across stocks, crypto, forex, and commodities
  • ⚡ Fast & Reliable: Built with async support and robust error handling

📋 What's Included

Core Modules

  • Indicators: 81+ technical indicators (RSI, MACD, Stochastic, etc.)
  • Options: Fetch option chains by expiration or strike price
  • Ideas: Community trading ideas and strategies
  • News: Financial news with provider filtering
  • Real-Time: WebSocket streaming for live data
  • Screener: Advanced stock screening with custom filters
  • Market Movers: Top gainers, losers, and active stocks
  • Fundamentals: Financial statements and ratios
  • Calendar: Earnings and dividend events

Data Sources

  • 260+ Exchanges: Binance, Coinbase, NASDAQ, NYSE, and more
  • 16+ Markets: Stocks, Crypto, Forex, Futures, Bonds
  • Real-Time Updates: Live price feeds and indicators
  • Historical Data: Backtesting and analysis support

🛠️ Development & Testing

For contributors and developers, this project includes comprehensive tooling for local testing.

Quick Commands

# Run all quality checks before committing
make check

# Full CI simulation with coverage
make ci

# Individual checks
make lint          # Run ruff linter
make format        # Auto-format code
make type-check    # Run mypy type checker
make test          # Run tests

Pre-commit Hooks

Pre-commit hooks automatically run on every commit to enforce code quality:

# Install hooks (one-time setup)
make install-hooks

Full Documentation

See LOCAL_TESTING.md for complete details on:

  • Makefile commands
  • Pre-commit hook configuration
  • Running GitHub Actions locally with act
  • CI/CD workflow testing

Publishing to PyPI

This project is configured to use Trusted Publishing (OIDC) via GitHub Actions. See PUBLISHING.md for step-by-step instructions on setting up your PyPI project.


🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.


📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tv_scraper-1.0.2.tar.gz (181.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tv_scraper-1.0.2-py3-none-any.whl (59.2 kB view details)

Uploaded Python 3

File details

Details for the file tv_scraper-1.0.2.tar.gz.

File metadata

  • Download URL: tv_scraper-1.0.2.tar.gz
  • Upload date:
  • Size: 181.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for tv_scraper-1.0.2.tar.gz
Algorithm Hash digest
SHA256 1242c733cc3f14227ce5ce0912a952d81e3df21b4cff8f1cc3eace192cb935e7
MD5 c502d84ea27a9b5d27a0ba1e9e2648ff
BLAKE2b-256 9d0054452a577520e5a250d3de13765f7097c19f1d73cefb5f3f9a125e5ecf26

See more details on using hashes here.

Provenance

The following attestation bundles were made for tv_scraper-1.0.2.tar.gz:

Publisher: publish.yml on smitkunpara/tv-scraper

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tv_scraper-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: tv_scraper-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 59.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for tv_scraper-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d5ed0d5b50a9837c714151e7b089a657a32fcbe5533be16155bebfbcce2f7bf6
MD5 dd48987f068f78e0b6d5d177676c635d
BLAKE2b-256 d0b9450b7b3176ad59e176386f0cc264dab9e89b4478965c7e06414378e16a21

See more details on using hashes here.

Provenance

The following attestation bundles were made for tv_scraper-1.0.2-py3-none-any.whl:

Publisher: publish.yml on smitkunpara/tv-scraper

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page