How eshaham/israeli-bank-scrapers works
This is a Node.js library that logs into Israeli bank and card-provider sites, gathers account and transaction data, and returns normalized results. The principal flow is a consumer creating a scraper for a company, supplying credentials, and calling scrape; the selected scraper handles provider access and produces the result. Browser-based and API-oriented implementations share common scraping and transaction utilities. The README documents support across banks, card issuers, experimental OneZero, and two-factor authentication. Edges use the README or indexed source references; some provider-specific behavior is unsampled, so uncertain links are omitted.
Main entry points: factory.ts Scraper Factory · visa-cal.ts Visa Cal Scraper · base-scraper-with-browser.ts Browser Session · leumi.ts Leumi Scraper
Components 23
Public API
- Public Exports
src/index.ts - Company Metadata
src/definitions.ts
Scraper Runtime
- Scraper Factory
src/scrapers/factory.ts - Scraper Options
src/scrapers/interface.ts - Scraper Lifecycle
src/scrapers/base-scraper.ts - Browser Session
src/scrapers/base-scraper-with-browser.ts - HTTP Helpers
src/helpers/fetch.ts - Page Interactions
src/helpers/elements-interactions.ts - Navigation Helpers
src/helpers/navigation.ts - Wait Utilities
src/helpers/waiting.ts
Provider Scrapers
- Bank Scrapers
src/scrapers - Card Scrapers
src/scrapers - Leumi Scraper
src/scrapers/leumi/leumi.ts - Max Scraper
src/scrapers/max.ts - Mizrahi Scraper
src/scrapers/mizrahi.ts - Visa Cal Scraper
src/scrapers/visa-cal.ts - OneZero Scraper
src/scrapers/one-zero.ts - OneZero Queries
src/scrapers/one-zero-queries.ts
Shared Domain
- Transaction Models
src/transactions.ts - Transaction Helpers
src/helpers/transactions.ts
Other components
- Library Consumer
- Puppeteer Browser
- Financial Providers
Connections 42
- Library Consumer → Public Exports: imports
- Public Exports → Scraper Factory: exports
src/index.ts - Public Exports → Company Metadata: exports
src/index.ts - Library Consumer → Scraper Factory: selects company
- Scraper Factory → Bank Scrapers: selects scraper
src/scrapers/factory.ts - Scraper Factory → Card Scrapers: selects scraper
src/scrapers/factory.ts - Scraper Factory → Leumi Scraper: constructs
src/scrapers/factory.ts - Scraper Factory → Max Scraper: constructs
src/scrapers/factory.ts - Scraper Factory → Mizrahi Scraper: constructs
src/scrapers/factory.ts - Scraper Factory → Visa Cal Scraper: constructs
src/scrapers/factory.ts - Scraper Factory → OneZero Scraper: constructs
src/scrapers/factory.ts - Library Consumer → Scraper Options: configures
- Leumi Scraper → Browser Session: extends
src/scrapers/leumi/leumi.ts - Max Scraper → Browser Session: extends
src/scrapers/max.ts - Mizrahi Scraper → Browser Session: extends
src/scrapers/mizrahi.ts - Visa Cal Scraper → Browser Session: extends
src/scrapers/visa-cal.ts - OneZero Scraper → Scraper Lifecycle: extends
src/scrapers/one-zero.ts - Browser Session → Puppeteer Browser: drives
src/scrapers/base-scraper-with-browser.ts - Browser Session → Page Interactions: uses
src/scrapers/base-scraper-with-browser.ts - Browser Session → Navigation Helpers: uses
src/scrapers/base-scraper-with-browser.ts - Page Interactions → Wait Utilities: waits with
src/helpers/elements-interactions.ts - Navigation Helpers → Wait Utilities: waits with
src/helpers/navigation.ts - Leumi Scraper → Financial Providers: scrapes
- Max Scraper → Financial Providers: scrapes
- Visa Cal Scraper → Financial Providers: scrapes
- OneZero Scraper → Financial Providers: scrapes
- Leumi Scraper → HTTP Helpers: uses
src/scrapers/leumi/leumi.ts - Max Scraper → HTTP Helpers: uses
src/scrapers/max.ts - Mizrahi Scraper → HTTP Helpers: uses
src/scrapers/mizrahi.ts - Visa Cal Scraper → HTTP Helpers: requests with
src/scrapers/visa-cal.ts - OneZero Scraper → HTTP Helpers: uses
src/scrapers/one-zero.ts - OneZero Scraper → OneZero Queries: uses queries
src/scrapers/one-zero.ts - Visa Cal Scraper → Page Interactions: interacts with
src/scrapers/visa-cal.ts - Leumi Scraper → Transaction Helpers: uses
src/scrapers/leumi/leumi.ts - Max Scraper → Transaction Helpers: uses
src/scrapers/max.ts - Mizrahi Scraper → Transaction Helpers: uses
src/scrapers/mizrahi.ts - Visa Cal Scraper → Transaction Helpers: filters with
src/scrapers/visa-cal.ts - OneZero Scraper → Transaction Helpers: uses
src/scrapers/one-zero.ts - Transaction Helpers → Transaction Models: transforms
src/helpers/transactions.ts - Leumi Scraper → Transaction Models: returns accounts
src/scrapers/leumi/leumi.ts - Max Scraper → Transaction Models: returns accounts
src/scrapers/max.ts - Visa Cal Scraper → Transaction Models: returns accounts
src/scrapers/visa-cal.ts