- OCDS API client for eTenders.gov.za (primary tender discovery) - Web UI scraper using Playwright (fetches supportDocument[] array that the OCDS API doesn't expose — only 1 doc per tender in OCDS) - SQLite database with full schema for tenders + documents - Click CLI: pull, stats, list, show commands - 10 unit tests (all passing) covering models, OCDS parsing, web UI parsing, and document enrichment logic - Comprehensive research report: 75+ SA tender sources documented with automation details (API/RSS/scraping availability per source) - Hybrid architecture: OCDS for discovery + web scraping for full document lists (verified: web UI shows 2+ docs, OCDS shows 1)
10 lines
198 B
Plaintext
10 lines
198 B
Plaintext
httpx>=0.28.1,<1
|
|
beautifulsoup4>=4.12.3,<5
|
|
lxml>=5.3.0,<6
|
|
selectolax>=0.3.27,<1
|
|
playwright>=1.49.0,<2
|
|
rich>=13.9.0,<14
|
|
click>=8.1.7,<9
|
|
feedparser>=6.0.11,<7
|
|
python-dateutil>=2.9.0,<3
|
|
tqdm>=4.67.0,<5 |