CLI scraper for screener.in focused on fast non-interactive workflows for agents and humans.
Linux/macOS installer:
curl -fsSL https://raw.githubusercontent.com/vedanth-jadhav/screener/main/scripts/install.sh | bash./screener
# or
./screener interactiveInteractive mode now opens a full-screen dashboard with three panes: Companies, Sections, and Content.
Chart sections render as multi-row detailed plots with Y-axis scaling and date axis, plus recent datapoints.
Companies pane is hidden by default so sections/content get more space; press c to open it.
When / search returns multiple matches, the companies pane opens automatically with suggestions.
Keys:
↑/↓ move selection
Enter load selected company / select section
Tab switch focus across visible panes
←/→ horizontal pan in wide tables
PgUp/PgDn vertical scroll in content
/ search symbol/company name/URL with suggestions
c toggle companies pane (search results / cached list)
r refresh current company
v cycle view (auto/consolidated/standalone)
q quit
go build -o screener ./cmd/screenerexport SCREENER_EMAIL="you@example.com"
export SCREENER_PASSWORD="your-password"
./screener config initOr login directly:
./screener auth login
./screener auth login --email you@example.com --password-stdinFor Google-only Screener accounts, login in browser and import cookies:
./screener auth import-cookies --file cookies.json./screener cache build --output json
./screener search "tata" --output json
./screener fetch company TCS --view auto --output json --i-understand
./screener fetch batch --symbols TCS,INFY --output json --i-understand
./screener fetch batch --url https://www.screener.in/screens/1/the-bull-cartel/ --output json --i-understand
./screener docs annual-reports --symbol TCS --dry-run --output json --i-understand
./screener docs announcements --symbol TCS --last 10 --output json --i-understand
./screener docs concalls --symbol TCS --output json --i-understand
./screener docs news --symbol TCS --output json --i-understandstdoutcontains data output only.- Errors are emitted as JSON envelopes.
- Live scrape commands require
--i-understand(orSCREENER_I_UNDERSTAND=1). - Interactive dashboard now opens directly in search mode and shows loading progress while fetching.
Current Priceis always refreshed live and is not stored in cache files.- Chart output is visual (sparkline + recent points) in
tablemode, and fully structured injsonmode for agents. - In non-interactive mode, default
tableoutput automatically switches tojson(unless you explicitly set--output). - Cache/config paths default to
~/.screener/.