A separate collection of workflows was developed for each source rather than forcing different websites through one generic crawler. Each implementation handled the structure and interaction model of its source while producing data that could be stored and processed outside the website.
HomeLight City-Level Collection
A Python and Selenium collector navigated HomeLight city pages, waited for agent cards, followed pagination, and captured agent profile information. The workflow collected fields such as name, brokerage, biography, experience, transactions, pricing information, city, and state.
UpNest Geographic Crawling
Scrapy was used to discover and process UpNest city pages at a larger scale. Zyte Smart Proxy supported the crawl where regional access and long-running collection could otherwise encounter restrictions. The extracted records included profile links, brokerage, experience, transactions, ratings, and location information.
HomeOpenly Browser Automation
A separate workflow used Crawlee and Playwright to automate HomeOpenly's buying request process. The active configuration worked through location-specific datasets and stored results separately. Python helpers were then used to combine selected JSON records and convert outputs into CSV format.
Pagination & Long-Running Collection
The collectors were designed around geographic traversal rather than one-time page extraction. Pagination handling allowed additional result pages to be processed, while location-based storage reduced the need to treat every run as one large uninterrupted collection job.
Structured Data Processing
Collected information was preserved in JSON and CSV formats for downstream processing. Source-specific outputs retained agent profile and performance information in structured form, providing a base for later cleaning, comparison, and reporting.
Key Deliverables
- Developed three source-specific real-estate data collection workflows.
- Built Selenium-based HomeLight collection with city traversal and pagination.
- Implemented Scrapy and Zyte-powered UpNest crawling for large geographic datasets.
- Created Crawlee and Playwright automation for location-based HomeOpenly collection.
- Added structured JSON/CSV output, dataset merging, and conversion utilities for downstream use.