refactor scraper