GSMArena Phone Specs Scraper
Budget: $30 – $250 USD
I need a fresh, comprehensive dataset of every handset listed on GSMArena, captured directly from the individual specification pages and saved to a single CSV file. The scrape must follow GSMArena’s site structure so the file is easy to keep in sync later, and every field that appears on a spec sheet—brand, model, announcement date, display, chipset, memory, cameras, battery, network bands, dimensions, OS and so on—should be included.
Please build the script in Python and rely on standard scraping tools such as Requests, BeautifulSoup, Scrapy or Selenium (feel free to combine them if pagination or dynamic content requires it). I want the code and short setup notes alongside the final CSV so I can rerun the process on my own machine when new devices appear.
Deliverables
• Python source code with clear comments
• CSV containing one row per phone and one column per spec field
• README with setup steps, run command, and explanation of any special dependencies
Acceptance criteria
• All current phone models on GSMArena are present (spot-check against site index)
• No empty header columns; missing values appear as blank cells only where the site itself omits data
• CSV opens without errors in Excel and passes a quick schema check (row counts, unique brand–model pairs)
Feel free to suggest additional data normalisation ideas if they simplify later analysis, but keep the raw values intact in the CSV as the primary deliverable.
Please build the script in Python and rely on standard scraping tools such as Requests, BeautifulSoup, Scrapy or Selenium (feel free to combine them if pagination or dynamic content requires it). I want the code and short setup notes alongside the final CSV so I can rerun the process on my own machine when new devices appear.
Deliverables
• Python source code with clear comments
• CSV containing one row per phone and one column per spec field
• README with setup steps, run command, and explanation of any special dependencies
Acceptance criteria
• All current phone models on GSMArena are present (spot-check against site index)
• No empty header columns; missing values appear as blank cells only where the site itself omits data
• CSV opens without errors in Excel and passes a quick schema check (row counts, unique brand–model pairs)
Feel free to suggest additional data normalisation ideas if they simplify later analysis, but keep the raw values intact in the CSV as the primary deliverable.
Related categories:
Python
Web Scraping
Software Architecture
Data Mining
Scrapy
BeautifulSoup
Data Analysis
Selenium