Web Page Change Tracker
Phase 1 — Add, Remove, and Store Pages
- Implement a command-line interface or a graphical interface to add, delete, and modify tracked web pages
- Store pages in a local database (e.g., SQLite) with URL and last snapshot
- Validate URLs before saving
Functional result: User can manage a list of pages to track; database correctly stores added, deleted, and modified entries.
Phase 2 — Page Retrieval & Snapshot
- Fetch HTML content of each tracked page
- Save initial snapshot in the database
- Handle basic errors (network failures, invalid URLs)
Functional result: Program downloads and stores snapshots of all tracked pages; failed URLs are reported clearly.
Phase 3 — Change Detection
- Compare current page snapshot with the last saved version
- Detect changes recursively in the HTML content (e.g., new text, removed elements)
- Mark which parts of the page have been modified
Functional result: Program identifies when a page has changed and records differences; no false positives for unchanged pages.
Phase 4 — Notifications & Reporting
- Send email notifications to the user when a page has changed
- Include summary of changes in the message
Functional result: User receives email alerts when tracked pages are modified; console or log output lists the detected changes.