refactored scraping