I need a clean, well-documented Python script that takes a simple text query such as “<City> <State>” and returns every address Zillow shows for that search. Each address must be saved MongoDB collection I’ll provide access to: split into Street, City, State, and Zip Code fields. Technical needs • Rotating proxy support and any lightweight anti-bot measures baked in, so the scraper stays stable over long runs. • Thoughtful handling of the usual scraping headaches—timeouts, captchas, blocked requests, empty responses—raising clear messages rather than crashing. • A tidy function or CLI flag that lets me change cities or states without touching the core code. Deliverables - Python source file(s) plus a requirements.txt. - Brief README with setup, usage, and proxy configuration notes. - Sample MongoDB document showing both the full_address and the four separate columns so I can verify everything imported correctly. Keep your solution modular, and feel free to choose the tooling stack you’re most comfortable with (Requests + BeautifulSoup, Scrapy, Selenium, Playwright, etc.) as long as the final result is headless and dependable. Note: I'm an IT guy too.