planningalerts-scrapers / joondalup

City of Joondalup Open Development Applications


City of Joondalup - Open Development Applications Scraper

  • Cookie tracking - No
  • Pagnation - yes, via a flag in the HTML returned in the JSON data
  • JavaScript - Yes, but we don't need to execute it, instead call the api directly
  • Clearly defined data within a row - No, data is in HTML in a JSON record, and reference in the details page
  • System - custom

This is a scraper that runs on Morph. To get started see the documentation

Add any issues to https://github.com/planningalerts-scrapers/issues/issues

To run the scraper

bundle exec ruby scraper.rb

Expected output

Getting initial page
  Pausing 1.023s
Getting page 1
/home/ianh/.local/share/mise/installs/ruby/3.2.2/lib/ruby/gems/3.2.0/gems/mechanize-2.8.5/lib/mechanize/pluggable_parsers.rb:107:in `new': MIME::Type.MIME::Type.new when called with a String is deprecated.
  Fetching detail page: https://www.joondalup.wa.gov.au/community-and-spaces/community-consultation/31b-strathyre-drive,-duncraig-–-single-house-(additions)
  Extracted DA25/0869 from detail page
Saving record DA25/0869 - 31B Strathyre Drive, Duncraig, WA
...
  Fetching detail page: https://www.joondalup.wa.gov.au/community-and-spaces/community-consultation/51a-conidae-drive,-heathridge-–-grouped-dwelling-(new-dwelling)
  Extracted DA25/0774 from detail page
Saving record DA25/0774 - 51A Conidae Drive, Heathridge, WA
Deleting 0 applications scraped between  and 2025-12-28
  Running VACUUM to reclaim space...
Finished! Added 12 applications, and skipped 0 unprocessable applications from 1 pages.

Execution time: ~ 11 seconds

To run style and coding checks

bundle exec rubocop

To check for security updates

gem install bundler-audit
bundle-audit

Contributors ianheggie-oaf benrfairless

Last run completed successfully .

Console output of last run

Injecting configuration and compiling... Injecting scraper and running... Getting initial page Getting page 1 Fetching detail page: https://www.joondalup.wa.gov.au/community-and-spaces/community-consultation/9-lawson-way%2C-padbury-%28new-dwelling-and-additions-to-existing-dwelling%29 Extracted DA26/0687 from detail page Warning - Unable to parse address and description from: 9 Lawson Way, Padbury (new dwelling and additions to existing dwelling) (skipped) Fetching detail page: https://www.joondalup.wa.gov.au/community-and-spaces/community-consultation/156-beachside-drive%2C-burns-beach-%28new-two-storey-dwelling-modifications-to-previous-approved-da25 Extracted DA25/0711.01 from detail page Saving record DA25/0711.01 - 156 Beachside Drive, Burns Beach (new two storey dwelling, WA Fetching detail page: https://www.joondalup.wa.gov.au/community-and-spaces/community-consultation/106-west-coast-drive%2C-sorrento Extracted DA26/0659 from detail page Warning - Unable to parse address and description from: 106 West Coast Drive, Sorrento (single house additions) (skipped) Fetching detail page: https://www.joondalup.wa.gov.au/community-and-spaces/community-consultation/4-martinique-mews-hillarys-un-hosted-short-term-rental-accommodation Extracted DA25/0673.01 from detail page Saving record DA25/0673.01 - 4 Martinique Mews Hillarys, WA Fetching detail page: https://www.joondalup.wa.gov.au/community-and-spaces/community-consultation/31-chadlington-drive%2C-padbury-child-care-premises-%28modifications-to-previously-approved-operating-881390b7183aeb2493765e0fd3657dc8 Extracted DA14/0565.03 from detail page Saving record DA14/0565.03 - 31 Chadlington Drive, Padbury, WA Fetching detail page: https://www.joondalup.wa.gov.au/community-and-spaces/community-consultation/7-springfield-court%2C-kallaroo-%E2%80%93-single-house-%28additions%29 Extracted DA26/0460 from detail page Saving record DA26/0460 - 7 Springfield Court, Kallaroo, WA Fetching detail page: https://www.joondalup.wa.gov.au/community-and-spaces/community-consultation/94-caridean-street%2C-heathridge-%E2%80%93-multiple-dwellings-%288-new-dwellings%29 Extracted DA26/0603 from detail page Saving record DA26/0603 - 94 Caridean Street, Heathridge, WA Finished! Added 5 applications, and skipped 2 unprocessable applications from 1 pages.

Data

Downloaded 548 times by mlandauer dcalde tkrikke Manasaanand qs4v8thvrq-boop 538digital AthleticoPrawn ianheggie-oaf Joel-Tan_valocity

To download data sign in with GitHub

Download table (as CSV) Download SQLite database (28 KB) Use the API

rows 10 / 31

council_reference address description info_url date_scraped on_notice_from on_notice_to
DA26/0506
3 Marine Terrace Sorrento, WA
Unhosted Short Term Rental Accommodation (Change of Use)
2026-10-04
2026-09-21
2026-10-06
DA26/0434
38A Peppermint Drive, Greenwood, WA
Single House (New Two-Storey Dwelling)
2026-10-04
2026-09-21
2026-10-06
DA26/0565
5 Alycon Place, Kallaroo, WA
Unhosted Short Term Rental Accommodation (Change of Use)
2026-10-05
2026-09-24
2026-10-09
DA26/0525
109 Marine Terrace, Sorrento, WA
Grouped Dwelling (Two New Two Storey Dwellings)
2026-10-05
2026-09-24
2026-10-09
DA26/0509
2 Craigie Drive, Craigie, WA
Grouped Dwelling (Two New Dwellings)
2026-10-05
2026-09-24
2026-10-09
DA26/0572
10 Sweeney Way, Padbury, WA
Single House (Additions)
2026-10-05
2026-09-24
2026-10-09
DA26/0608
15 Glenunga Way, Craigie, WA
Home Business (Consulting Rooms)
2026-10-05
2026-09-24
2026-10-09
DA26/0634
13A Beach Road, Marmion, WA
Grouped Dwelling (Site Works and Privacy Screen)
2026-10-07
2026-09-29
2026-10-13
DA26/0533
5 Bacchante Circle, Ocean Reef, WA
Unhosted Short Term Rental Accommodation (Change of Use)
2026-10-08
2026-09-29
2026-10-13
DA26/0481
601 Burns Beach Road, Iluka, WA
Single House (Additions)
2026-10-11
2026-09-29
2026-10-13

Statistics

Average successful run time: less than 20 seconds

Total run time: about 1 hour

Total cpu time used: 5 minutes

Total disk space used: 2.18 MB

History

  • Auto ran revision c56eb95c and completed successfully .
    5 records added, 5 records removed in the database
  • Auto ran revision c56eb95c and completed successfully .
    5 records added, 5 records removed in the database
  • Auto ran revision c56eb95c and completed successfully .
    5 records added, 8 records removed in the database
  • Auto ran revision c56eb95c and completed successfully .
    5 records added, 6 records removed in the database
  • Auto ran revision c56eb95c and completed successfully .
    5 records added, 4 records removed in the database
  • ...
  • Created on morph.io

Show complete history

Scraper code

Ruby

joondalup / scraper.rb