PHP/Python CSV Web Scraper
Budget: $30 – $250 AUD
I’m looking for a lightweight scraper that pulls the following fields from a single, publicly accessible website and drops them neatly into a CSV: company_name, address, suburb, state, postcode, telephone, email and website. The data sits across multiple pages, so the script will need to step through pagination (or any “next” links) until the list is exhausted.
Language is flexible—PHP 5.4 (legacy server) or modern Python—so choose whichever lets you work fastest and cleanest. If you prefer Python, I’m happy with requests + BeautifulSoup or Scrapy; in PHP, cURL with DOMDocument or Simple HTML DOM is fine. Keep external dependencies minimal and open-source.
Deliverables
• A fully commented source file (.php or .py) that I can run from the command line.
• A sample CSV showing at least a handful of correctly scraped rows.
• A brief README outlining setup, any libraries needed, and how to rerun the script on demand.
Acceptance criteria
– Script completes without errors and reaches every available listing.
– Each CSV column matches its corresponding field exactly, with no mixed data.
– No hard-coded absolute paths or credentials; everything configurable at the top of the script.
Once I confirm the CSV structure and data accuracy, the project’s done. Let me know your chosen language and estimated turnaround, and I’ll share the target URL so you can get started right away.
Language is flexible—PHP 5.4 (legacy server) or modern Python—so choose whichever lets you work fastest and cleanest. If you prefer Python, I’m happy with requests + BeautifulSoup or Scrapy; in PHP, cURL with DOMDocument or Simple HTML DOM is fine. Keep external dependencies minimal and open-source.
Deliverables
• A fully commented source file (.php or .py) that I can run from the command line.
• A sample CSV showing at least a handful of correctly scraped rows.
• A brief README outlining setup, any libraries needed, and how to rerun the script on demand.
Acceptance criteria
– Script completes without errors and reaches every available listing.
– Each CSV column matches its corresponding field exactly, with no mixed data.
– No hard-coded absolute paths or credentials; everything configurable at the top of the script.
Once I confirm the CSV structure and data accuracy, the project’s done. Let me know your chosen language and estimated turnaround, and I’ll share the target URL so you can get started right away.
Related categories:
PHP
Python
Web Scraping
Software Architecture
cURL
Scrapy
Data Extraction
BeautifulSoup