StashProperty / multiple_masterview

Scrapes multiple authorities that have a masterview system


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

To run the scraper

bundle exec ruby scraper.rb

To run the tests

bundle exec rake

To run style and coding checks

bundle exec rubocop

What a Masterview website looks like

Sign up

(To update this screenshot run bundle exec rake screenshots)

Contributors mlandauer AndreM101 njenkins

Last run failed with status code 1.

Console output of last run

Injecting configuration and compiling... Injecting scraper and running... Scraping authorities: gunnedah, maranoa, broken_hill, gympie, fairfield, fraser_coast, hawkesbury, toowoomba, bundaberg, wingecarribee, albury, bogan, lismore, port_macquarie_hastings, port_stephens, singleton, camden Collecting feed data for gunnedah... Saving record 2025/50/1 - 1 Pullaming St, Curlewis NSW 2381 Saving record 2025/49/1 - 83 Marquis St, Gunnedah NSW 2380 Saving record 2024/84/2 - 100B Beulah St, Gunnedah NSW 2380 Saving record 2025/48/1 - 22-24 Silversmith Pl, Gunnedah NSW 2380 Saving record 2025/47/1 - 125 Pownall Rd, Mullaley NSW 2379 Saving record 2025/45/1 - 91 Reading Rd, Gunnedah NSW 2380 Saving record 2025/1017/1 - 95-101 Kamilaroi Rd, Gunnedah NSW 2380 Saving record 2025/1015/1 - 17 Bellevue Cl, Gunnedah NSW 2380 Saving record 2025/1016/1 - 1382 Goolhi Rd, Emerald Hill NSW 2380 Saving record 2025/1014/1 - 85 Kerry Elizabeth Dr, Gunnedah NSW 2380 Saving record 2022/109/2 - 396 Conadilly St, Gunnedah NSW 2380 Saving record 2024/31/2 - 95 Marquis St, Gunnedah NSW 2380 Saving record 2025/44/1 - 124 Stock Rd, Gunnedah NSW 2380 Saving record 2025/43/1 - 49 Reading Rd, Gunnedah NSW 2380 Saving record 2025/1013/1 - 12 Allgayer Dr, Gunnedah NSW 2380 Saving record 2025/1012/1 - 11 Ewing St, Gunnedah NSW 2380 Saving record 2025/1010/2 - 88 Edward St, Gunnedah NSW 2380 Collecting feed data for maranoa... Saving record 22 - 2025 - 21480 - 1 - 127 Clayton Rd, Roma 4455 QLD maranoa: ERROR: Net::ReadTimeout Collecting feed data for broken_hill... /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:181:in `rbuf_fill' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:157:in `readuntil' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:167:in `readline' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http/response.rb:40:in `read_status_line' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http/response.rb:29:in `read_new' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:1494:in `block in transport_request' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:1491:in `catch' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:1491:in `transport_request' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:1464:in `request' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:891:in `block in request' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:606:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:104:in `block in scrape_api_period' /app/lib/masterview_scraper/get_applications_api.rb:23:in `block in scrape' /app/lib/masterview_scraper/get_applications_api.rb:60:in `block in scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:54:in `each' /app/lib/masterview_scraper/get_applications_api.rb:54:in `scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:18:in `scrape' /app/lib/masterview_scraper.rb:97:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' Saving record 10 - 2024 - 96 - 2 - 121 Bagot St, Broken Hill NSW 2880 Saving record 10 - 2025 - 38 - 1 - 81 Buck St, Broken Hill NSW 2880 Saving record 10 - 2025 - 39 - 1 - 537 Cummins St, Broken Hill NSW 2880 Saving record 10 - 2025 - 37 - 1 - 494 Williams St, Broken Hill NSW 2880 Saving record 10 - 2025 - 28 - 1 - 333 Murton St, Broken Hill NSW 2880 Saving record 10 - 2025 - 36 - 1 - 316 Knox St, Broken Hill NSW 2880 Saving record 10 - 2025 - 35 - 1 - 461-469 Argent St, Broken Hill NSW 2880 Saving record 10 - 2025 - 33 - 1 - 307 Boughtman St, Broken Hill NSW 2880 Saving record 10 - 2025 - 29 - 1 - 155 Wyman St, Broken Hill NSW 2880 Saving record 10 - 2025 - 34 - 1 - 521 Mcgowen St, Broken Hill NSW 2880 Saving record 10 - 2025 - 32 - 1 - 124 Williams St, Broken Hill NSW 2880 Saving record 10 - 2025 - 31 - 1 - 586-588 Wolfram St, Broken Hill NSW 2880 Saving record 10 - 2025 - 14 - 2 - 299 Duff St, Broken Hill NSW 2880 Collecting feed data for gympie... Saving record 7.2025.1314.1 - 28 Club Dr, Gympie 4570 QLD Saving record 8.2025.1323.1 - 202 Nash Rd, Tamaree 4570 QLD Saving record 15.2025.1344.1 - 2618 Bruce Hwy, Gunalda 4570 QLD Saving record 8.2025.1341.1 - 90 Mary Valley Rd, Southside 4570 QLD Saving record 8.2025.1338.1 - 220 Melawondi Rd, Melawondi 4570 QLD Saving record 8.2025.1333.1 - 12A Corella Ct, Gympie 4570 QLD Saving record 7.2025.1318.1 - 24 Donald Dr, Curra 4570 QLD Saving record 15.2025.1202.1 - 1199 Miva Rd, Miva 4570 QLD Saving record 7.2025.1179.1 - 63 Eljays Rd, The Palms 4570 QLD Saving record 7.2025.1162.1 - 89 Hood Rd, Veteran 4570 QLD Saving record 7.2025.1235.1 - Wide Bay Hwy, Kinbombi 4601 QLD Saving record 8.2025.1217.1 - 1565 Tin Can Bay Rd, Goomboorian 4570 QLD Saving record 15.2025.1250.1 - 22-24 Gympie Rd, Tin Can Bay 4580 QLD Saving record 8.2025.1250.1 - 22-24 Gympie Rd, Tin Can Bay 4580 QLD Saving record 7.2025.1250.1 - 22-24 Gympie Rd, Tin Can Bay 4580 QLD Saving record 15.2025.1204.1 - 23 Excelsior Rd, Gympie 4570 QLD Saving record 7.2025.1238.1 - 9 Wilsons Pocket Rd, Goomboorian 4570 QLD Collecting feed data for fairfield... Saving record DA - 128.1/2025 - 73 Knight ST LANSVALE, NSW Saving record DA - 129.1/2025 - 3 Ludgate ST FAIRFIELD, NSW Saving record DA - 130.1/2025 - 10 Gundagai CRES WAKELEY, NSW Saving record DA - 131.1/2025 - 62 Campbell ST FAIRFIELD EAST, NSW Saving record DA - 133.1/2025 - 15 Crosby CRES FAIRFIELD, NSW Saving record DA - 134.1/2025 - 51 Dransfield RD EDENSOR PARK, NSW Saving record DA - 135.1/2025 - 813-913 Wallgrove RD HORSLEY PARK, NSW Saving record DA - 136.1/2025 - 7 Verrell ST WETHERILL PARK, NSW Saving record DA - 137.1/2025 - 12 Normanby ST FAIRFIELD EAST, NSW Saving record DA - 138.1/2025 - 16A Woods AVE CABRAMATTA, NSW Saving record DA - 139.1/2025 - 68 Canley Vale RD CANLEY VALE, NSW Saving record DA - 140.1/2025 - 16 Victoria ST SMITHFIELD, NSW Saving record DA - 141.1/2025 - 87 Lord ST CABRAMATTA WEST, NSW Saving record DA - 142.1/2025 - 42 High ST CABRAMATTA WEST, NSW Saving record DA - 143.1/2025 - 384 Polding ST SMITHFIELD, NSW Saving record DA - 145.1/2025 - 17 Bancroft RD ABBOTSBURY, NSW Saving record DA - 146.1/2025 - 115-119 Cowpasture RD WETHERILL PARK, NSW Saving record DA - 147.1/2025 - 18-20 Beckenham ST CANLEY VALE, NSW Collecting feed data for fraser_coast... fraser_coast: ERROR: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (unable to get local issuer certificate) Collecting feed data for hawkesbury... /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:44:in `connect_nonblock' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:44:in `ssl_socket_connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:981:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:153:in `scrape_url' /app/lib/masterview_scraper.rb:61:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' Collecting feed data for toowoomba... hawkesbury: ERROR: Failed to open TCP connection to datrack.hawkesbury.nsw.gov.au:443 (getaddrinfo: Name or service not known) /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:939:in `rescue in block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:936:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:93:in `block in timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:153:in `scrape_url' /app/lib/masterview_scraper.rb:61:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' Collecting feed data for bundaberg... toowoomba: ERROR: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (ok) /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:44:in `connect_nonblock' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:44:in `ssl_socket_connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:981:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:153:in `scrape_url' /app/lib/masterview_scraper.rb:61:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' Collecting feed data for wingecarribee... bundaberg: ERROR: 403 => Net::HTTPForbidden for https://da.bundaberg.qld.gov.au/ -- unhandled response /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:329:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:91:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' Collecting feed data for albury... wingecarribee: ERROR: Failed to open TCP connection to datracker.wsc.nsw.gov.au:443 (getaddrinfo: Name or service not known) /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:939:in `rescue in block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:936:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:93:in `block in timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:153:in `scrape_url' /app/lib/masterview_scraper.rb:61:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' Collecting feed data for bogan... albury: ERROR: execution expired /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `initialize' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `open' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:91:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' Collecting feed data for lismore... bogan: ERROR: Failed to open TCP connection to datracker.bogan.nsw.gov.au:81 (getaddrinfo: Name or service not known) /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:939:in `rescue in block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:936:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:93:in `block in timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:91:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' Saving record 5.2025.103.1 - 45 Mckenzie St, Lismore NSW 2480 Saving record 5.2025.98.1 - 895 Pinchin Rd, Goolmangar NSW 2480 Saving record 10.2025.79.2 - 176 Lindendale Rd, Lindendale NSW 2480 Saving record 5.2025.108.1 - 2 Auckram Rd, Mckees Hill NSW 2480 Saving record 5.2025.113.1 - 77 Standing St, The Channon NSW 2480 Saving record 10.2024.274.1 - 11 Emma Way, Goonellabah NSW 2480 Saving record 5.2021.472.5 - 1566 Bangalow Rd, Clunes NSW 2480 Saving record 5.2025.111.1 - 6 Grey Gum Cl, Caniaba NSW 2480 Saving record 5.2025.109.1 - 10 Grace Rd, Bexhill NSW 2480 Saving record 5.2025.106.1 - 74 Mahogany Pde, Goonellabah NSW 2480 Saving record 5.2025.107.1 - 90 Gundurimba Rd, Monaltrie NSW 2480 Saving record 5.2025.105.1 - 62 Wyrallah Rd, East Lismore NSW 2480 Saving record 5.2025.54.2 - 15 Hillside Dr, Nimbin NSW 2480 Saving record 5.2025.78.2 - 32 George Dr, Chilcotts Grass NSW 2480 Saving record 5.2025.92.1 - 1047 Bangalow Rd, Bexhill NSW 2480 Saving record 10.2025.61.1 - 174 Pelican Creek Rd, South Gundurimba NSW 2480 Saving record 5.2025.99.1 - 76 Nielson St, East Lismore NSW 2480 lismore: ERROR: Unexpected field in: Determination Type: Collecting feed data for port_macquarie_hastings... /app/lib/masterview_scraper/pages/detail.rb:198:in `block in extract_decision_block' /app/lib/masterview_scraper/pages/detail.rb:189:in `each' /app/lib/masterview_scraper/pages/detail.rb:189:in `extract_decision_block' /app/lib/masterview_scraper/pages/detail.rb:209:in `scrape_new_version' /app/lib/masterview_scraper/pages/detail.rb:12:in `scrape' /app/lib/masterview_scraper.rb:112:in `block in scrape_api_period' /app/lib/masterview_scraper/get_applications_api.rb:23:in `block in scrape' /app/lib/masterview_scraper/get_applications_api.rb:60:in `block in scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:54:in `each' /app/lib/masterview_scraper/get_applications_api.rb:54:in `scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:18:in `scrape' /app/lib/masterview_scraper.rb:97:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' port_macquarie_hastings: ERROR: execution expired Collecting feed data for port_stephens... /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `initialize' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `open' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:91:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' Collecting feed data for singleton... port_stephens: ERROR: execution expired /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `initialize' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `open' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:91:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' Saving record 8.2025.135.1 - 14 Beh Cl, Singleton Heights NSW 2330 Saving record 8.2025.143.1 - 8 Victoria St, Glenridding NSW 2330 Saving record 10.2025.22.1 - 37 Kennedy St, Singleton NSW 2330 Saving record 8.2025.142.1 - 13 Radford Pwy, Branxton NSW 2335 Saving record 10.2024.303.1 - 20 Hunter St, Singleton NSW 2330 Saving record 8.2025.122.1 - 12 Turnbull Rd, Bulga NSW 2330 Saving record 8.2025.140.1 - 4 Maybon Cl, Branxton NSW 2335 Saving record 10.2024.140.1 - 6 York St, Singleton NSW 2330 Saving record 8.2025.138.1 - 42 Freeman Cl, Wattle Ponds NSW 2330 Saving record 12.2024.286.1 - 27 Robertson Cct, Sedgefield NSW 2330 Saving record 15.2025.25.1 - 17 Green Gr, Sedgefield NSW 2330 Saving record 10.2024.84.1 - 38 Willcox Ave, Singleton Heights NSW 2330 Saving record 12.2024.209.1 - 39A Aub Upward Cl, Wattle Ponds NSW 2330 Saving record 15.2025.26.1 - 169 Springvale Rd, Elderslie NSW 2335 Saving record 8.2025.137.1 - 2 James Cook Ave, Singleton Heights NSW 2330 Saving record 12.2021.370.1 - 1224 Milbrodale Rd, Broke NSW 2330 Saving record 10.2025.108.1 - 41 Broomfield Cres, Hunterview NSW 2330 Saving record 12.2024.36.1 - 64 Greenwood Ave, Redbournberry NSW 2330 Saving record 8.2025.132.1 - 5 Kirkwood Pl, Branxton NSW 2335 Saving record 8.2025.126.1 - 575 Westbrook Rd, Westbrook NSW 2330 Saving record 8.2025.124.1 - 2 Dargin Cl, Singleton Heights NSW 2330 Saving record 8.2025.115.1 - 56 Pin Oak Cct, Branxton NSW 2335 Saving record 8.2025.136.1 - 38A Falkiner Cres, Singleton Heights NSW 2330 Saving record 8.2021.293.2 - 251 Putty Rd, Glenridding NSW 2330 Saving record 8.2025.104.1 - 1 Gowrie St, Singleton NSW 2330 Saving record 8.2024.220.2 - 13 Mitchell Line Of Rd, Whittingham NSW 2330 Saving record 12.2019.242.1 - 332 Standen Dr, Lower Belford NSW 2335 Saving record 8.2023.514.2 - 913 Hermitage Rd, Pokolbin NSW 2320 Saving record 8.2025.129.1 - 40 Dimmock St, Hunterview NSW 2330 Saving record 8.2025.134.1 - 31 Freeman Cl, Wattle Ponds NSW 2330 Saving record 8.2025.131.1 - 26 Maskey Rd, Mount Thorley NSW 2330 singleton: ERROR: Unexpected field in: Determination Type: /app/lib/masterview_scraper/pages/detail.rb:198:in `block in extract_decision_block' Collecting feed data for camden... /app/lib/masterview_scraper/pages/detail.rb:189:in `each' /app/lib/masterview_scraper/pages/detail.rb:189:in `extract_decision_block' /app/lib/masterview_scraper/pages/detail.rb:209:in `scrape_new_version' /app/lib/masterview_scraper/pages/detail.rb:12:in `scrape' /app/lib/masterview_scraper.rb:112:in `block in scrape_api_period' /app/lib/masterview_scraper/get_applications_api.rb:23:in `block in scrape' /app/lib/masterview_scraper/get_applications_api.rb:60:in `block in scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:54:in `each' /app/lib/masterview_scraper/get_applications_api.rb:54:in `scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:18:in `scrape' /app/lib/masterview_scraper.rb:97:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' *************************************************** Now retrying authorities which earlier had failures *************************************************** camden: ERROR: 765: unexpected token at '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en-US"> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> Collecting feed data for maranoa... <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" /> <title> Authority e-Services - live </title> <link rel="stylesheet" href="/eservice/library/bootstrap-3.4.1.min.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/jquery-ui.min.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/jquery-ui.structure.min.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/jquery-ui.theme.min.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/e-services.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/calendar.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/daEnquiry_daEnquiry.css" id="pagecss" type="text/css" media="screen, projection" > <link rel="stylesheet" href="/eservice/library/e-print.css" type="text/css" media="print" > <link rel="stylesheet" href="/eservice/library/header-eserv.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/council/eservice/custom.css" type="text/css" media="screen, projection, print" > <script>var AUTHJS = {};AUTHJS.productName = "i-Services";</script> <script type="text/javascript" src="/eservice/jscalendar-1.0/calendar.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery/jquery-3.6.0.min.js"></script> <script>AUTHJS.productName = "e-Services";</script> <script type="text/javascript" src="/eservice/javascript/tether-1.3.3.js"></script> <script type="text/javascript" src="/eservice/javascript/modernizr-283.min.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery/bootstrap-3.4.1.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery/jquery-ui.min.js"></script> <script type="text/javascript" src="/eservice/javascript/e-services-page.js"></script> <script type="text/javascript" src="/eservice/javascript/prototype.js"></script> <script type="text/javascript" src="/eservice/javascript/civica.jquery.plugins.js"></script> <script type="text/javascript" src="/eservice/javascript/civica.common.init.js"></script> <script type="text/javascript" src="/eservice/javascript/civica.jquery.functions.js"></script> <script type="text/javascript" src="/eservice/javascript/util.js"></script> <script type="text/javascript" src="/eservice/javascript/json2.js"></script> <script type="text/javascript" src="/eservice/javascript/effects.js"></script> <script type="text/javascript" src="/eservice/javascript/controls.js"></script> <script type="text/javascript" src="/eservice/javascript/dragdrop.js"></script> <script type="text/javascript" src="/eservice/javascript/lightbox.js"></script> <script type="text/javascript" src="/eservice/javascript/menu.js"></script> <script type="text/javascript" src="/eservice/javascript/menuScroll.js"></script> <script type="text/javascript" src="/eservice/javascript/sitemap.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery.imageTickBox.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery.metadata.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery/jquery.form-3.46.0.js"></script> <link rel="shortcut icon" href="/favicon.ico" /> <script src="/eservice/javascript/da.js" type="text/javascript"></script> <script src="/eservice/javascript/mkTree.js" type="text/javascript"></script> </head> <body > <script type="text/javascript"> var initialTabPage= "null"; jQuery(document).ready(function() { if (initialTabPage != "null") { if (initialTabPage=="sitemap"){ initialTabPage="#sitemap-controller"; } else { initialTabPage="#dashboard-controller"; } jQuery(initialTabPage + " a.tab-clicker").not(".tabs-content *").click(); } }); (function() { var isBootstrapEvent = false; if (window.jQuery) { var all = jQuery('*'); jQuery.each(['hide.bs.dropdown', 'hide.bs.collapse', 'hide.bs.modal', 'hide.bs.tooltip', 'hide.bs.popover', 'hide.bs.tab'], function(index, eventName) { all.on(eventName, function( event ) { isBootstrapEvent = true; }); }); } var originalHide = Element.hide; Element.addMethods({ hide: function(element) { if(isBootstrapEvent) { isBootstrapEvent = false; return element; } return originalHide(element); } }); })(); </script> <!-- eServices --> <div id="page" class=" tabbed not-logged-in"> <div id="masthead" class="navbar navbar-static-top bs-docs-nav"> <div class="container" id="masthead-container"> <div class="navbar-header"> <a class="navbar-brand"> <span>e-Services</span> Camden Council </a> </div> <!-- masthead Quicklinks start --> <div id="wrapper-quick-links"> <ul id="quick-links" class="nav navbar-nav navbar-right"> <li class="top-link-home"> <a href="/eservice/navigationStart.do" id="quick-link-home"> Home </a> </li> <li class="top-link-signin"> <a href="/eservice/logonInit.do" id="quick-link-signin"> Sign In </a> </li> <li class="top-link-user"> <a> <!-- masthead User start --> You are a Guest <!-- masthead User end --> </a> </li> </ul> </div> <!-- masthead Quicklinks end --> </div> <!-- End container --> </div> <!-- End Masthead --> <!-- End Masthead navbar --> <div id="content"> <div class="container" id="content-container"> <div class="row" id="main-row"> <div class="col-sm-3" id="bstrap-leftnav"> <div id="search-results" > </div> <div id="admin-tabs" > <div id="dashboard" class="tabs-content"> <!-- START MENU CONTENT --> <div id="menus-toggle"> <div id="menus-button" class="btn btn-default"> <span id="menus-button-inner"> <a id="menus-button-link" href="#">Hide Menus</a> </span> </div> <div id="site-access" class="menu-on"> <ul id="siteaccesspanel"> <li id="siteaccesspanel_1"> <div class="menu-group"> <div class="menu-header-panel" title="Drag to change panel order"> <h3 class="panel-handle">Menu</h3> </div> <p class="menu-handlers"> <a href="/eservice/menu/minimisePanel.do?id=1" title="Minimise Panel" class="panel-min-max" id="panel-min-max-1" > <img src="/eservice/icons/minimise.gif" alt="Minimise" /> </a> </p> <div id="menu-search"> <form action="/eservice/menu/search.do" class="menu-search-form"> <p> <input type="text" size="15" name="search" id="search" class="field" value="Menu Search" /> <input type="submit" id="menu-search-submit" value="Go" class="buttonCalendar" /> <img src="/eservice/icons/loading.gif" alt="loading" class="loading" id="menu-search-loading" /> </p> <!-- div id="search-autocomplete" class="autocompleter"></div --> </form> <div id="search-results" > </div> </div> <div id="scrollingMenuContainer" class="scrolling-container"> <ul id="navigation"> <li class="nav-return" title="Back one menu level"><a href="/eservice/navigationStart.do" id="node-0"><img src="/eservice/icons/parent.gif" alt="Return to " />Applications</a></li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=10&nodeNum=3374010" class="linkitem" id="node-3374010">Development Application</a> </li> <li class='java'> <a href="/eservice/daEnquiry/currentlyAdvertised.do?nodeNum=3374975" class="linkitem" id="node-3374975">On Exhibition</a> </li> <li class='java'> <a href="/eservice/daEnquiry/recentlySubmitted.do?rangeType=M&rangeFrom=1&rangeTo=0&nodeNum=3374985" class="linkitem" id="node-3374985">Recently Submitted</a> </li> <li class='java'> <a href="/eservice/daEnquiry/recentlyDetermined.do?num_days=30&nodeNum=3374976" class="linkitem" id="node-3374976">Recently Determined</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=12&nodeNum=3374979" class="linkitem" id="node-3374979">Complying Development Certificate</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=11&nodeNum=3374980" class="linkitem" id="node-3374980">Construction Certificate</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=14&nodeNum=3374982" class="linkitem" id="node-3374982">Subdivision Certificate</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=13&nodeNum=3374986" class="linkitem" id="node-3374986">Occupation Certificate</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=16&nodeNum=3374987" class="linkitem" id="node-3374987">Engineering Construction</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=100&nodeNum=3374981" class="linkitem" id="node-3374981">Tree Development Application</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=27&nodeNum=3374011" class="linkitem" id="node-3374011">Fire Safety Schedule</a> </li> </ul> </div> </div> </li> <li id="siteaccesspanel_3"> <div class="menu-group"> <div class="menu-header-panel" title="Drag to change panel order"> <h3 class="panel-handle">History</h3> </div> <p class="menu-handlers"> <a href="/eservice/menu/movePanel.do?id=2" title="Panel Up" class="panel-up"> <img src="/eservice/icons/panel_move_up.gif" alt="Up" /></a> <a href="/eservice/menu/minimisePanel.do?id=2" title="Minimise Panel" class="panel-min-max" id="panel-min-max-2" > <img src="/eservice/icons/minimise.gif" alt="Minimise" /> </a> </p> <ul id="recently-used"> <li id="recently-used-0"> <a href="/eservice/daEnquiryInit.do?doc_typ=10&nodeNum=3374010" class="linkitem">Development Application</a> </li> </ul> </div> </li> </ul> <script type="text/javascript"> //Drag n Drop panels Sortable.create('siteaccesspanel', {handle: 'panel-handle', onUpdate:function(){new Ajax.Request(webContextPath + '/resequencePanels.do', {method: 'post', parameters:Sortable.serialize('siteaccesspanel')})}}); </script> <p id="scroll-trigger">15</p> <p id="alternate-scroll-trigger"></p> <p id="pixel-height-base-rate-for-list-item">24</p> </div> </div> </div> </div> </div> <div class="col-sm-9" id="bstrap-main"> <div id="main-content"> <div class="transaction-area" id="transaction-area"></div> <!-- END MENU CONTENT --> <div class="unique-content" id="daEnquiry_daEnquiry"> <div class="daEnquirySpecific" id="daEnquiry_daEnquiryDocumentType10"> <h1> Development Application Enquiry </h1> <div id="leftcontent"> <div class="infopanel"> <!-- CIVICA-INFO-START --> <div id="infopanel-header"> <h4 class="entryHeader" > Instructions </h4> </div> <div id="instructions-content" class="instructions"> <p>Enter some search criteria and select Search. If the search you entered does not yield any results, try broadening the search.</p> <p>When searching by the number, please enter the application number followed by the year, as in the example below.</p> </div> <!-- CIVICA-INFO-END --> </div> </div> <div id="rightcontent"> <div class="bodypanel" id="bodypanel1"> <!-- CIVICA-CONTENT-START:bodypanel1 --> <h2 > Details </h2> <?xml version="1.0" encoding="UTF-8"?> <div> <form action="daEnquiry.do" id="daEnquiryForm" name="daEnquiryForm" class="form-horizontal"> <div class="form-group"> <label class="col-sm-2 control-label">DA Number</label> <div class="col-sm-10"> <input type="text" class="text-medium" name="number" id="DANumber" size="10" maxlength="10" errors="DANumber" value="" /> <span class="subText">eg 121/2023</span> </div> </div> <p /> <p class="rowDataOnly"> <span class="rowInfo"> <strong>OR</strong> use any of the following search fields: </span> </p> <p> &nbsp; </p> <h2>Lodgement Date</h2> <div class="form-group" style="margin-bottom:2em; border:none; padding:0"> <div class="form-group" style="margin-bottom:2em"> <label class="radio-inline control-label control-radio" style="margin-left:10px"> <input type="radio" name="lodgeRangeType" id="lodgeRangeType" onclick="javascript:setDateRange('', '', 'DADateFrom', 'DADateTo')" /> Specified Range </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="lodgeRangeType" id="lodgeRangeType" onclick="javascript:setDateRange('01/06/2025','02/06/2025', 'DADateFrom', 'DADateTo')" /> This Week </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="lodgeRangeType" id="lodgeRangeType" onclick="javascript:setDateRange('25/05/2025','31/05/2025', 'DADateFrom', 'DADateTo')" /> Last Week </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="lodgeRangeType" id="lodgeRangeType" onclick="javascript:setDateRange('01/06/2025','30/06/2025', 'DADateFrom', 'DADateTo')" /> This Month </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="lodgeRangeType" id="lodgeRangeType" onclick="javascript:setDateRange('01/05/2025','31/05/2025', 'DADateFrom', 'DADateTo')" /> Last Month </label> </div> </div> <div class="form-group"> <div id="DADate"> <label class="col-sm-2 control-label" for="DADateFrom" id="daFromDateLabel">From</label> <div class="form-inline col-sm-10"> <input type="text" class="datepick text-small form-control" name="dateFrom" id="DADateFrom" style="padding-right: 0px" size="10" maxlength="10" errors="DADateFrom" value="" /> <label for="DADateTo" id="daToDateLabel">To</label> <input type="text" class="datepick text-small form-control" name="dateTo" id="DADateTo" style="padding-right: 0px" size="10" maxlength="10" errors="DADateTo" value="" /> </div> </div> </div> <h2>Determination Date</h2> <div class="form-group" style="margin-bottom:2em; border:none; padding:0"> <div class="form-group" style="margin-bottom:2em"> <label class="radio-inline control-label control-radio" style="margin-left:10px"> <input type="radio" name="detRangeType" id="detRangeType" onclick="javascript:setDateRange('','', 'detDateFromString', 'detDateToString')" /> Specified Range </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="detRangeType" id="detRangeType" onclick="javascript:setDateRange('01/06/2025','02/06/2025', 'detDateFromString', 'detDateToString')" /> This Week </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="detRangeType" id="detRangeType" onclick="javascript:setDateRange('25/05/2025','31/05/2025', 'detDateFromString', 'detDateToString')" /> Last Week </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="detRangeType" id="detRangeType" onclick="javascript:setDateRange('01/06/2025','30/06/2025', 'detDateFromString', 'detDateToString')" /> This Month </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="detRangeType" id="detRangeType" onclick="javascript:setDateRange('01/05/2025','31/05/2025', 'detDateFromString', 'detDateToString')" /> Last Month </label> </div> </div> <div class="form-group"> <div id="DetDate"> <label class="col-sm-2 control-label" for="detDateFrom" id="detFromDateLabel">From</label> <div class="form-inline col-sm-10" id="detDateFromInput"> <input type="text" class="datepick text-small form-control" name="detDateFrom" id="detDateFromString" style="padding-right: 0px" size="10" maxlength="10" errors="detDateFrom" value="" /> <label for="detDateTo" id="detToDateLabel">To</label> <input type="text" class="datepick text-small form-control" name="detDateTo" id="detDateToString" style="padding-right: 0px" size="10" maxlength="10" errors="detDateTo" value="" /> </div> </div> </div> <h2>Property Details</h2> <div class="form-group" id="streetNameRow"> <label class="control-label col-sm-2" for="streetName">Street Name</label> <div class="col-sm-10"> <input type="text" class="text-large" name="streetName" id="streetName" size="20" onblur="javascript:getHouseNum(); javascript:getSuburb()" value="" /> <div id="streetHints" class="autocompleter"> &nbsp; </div> </div> </div> <div class="form-group" id="suburbDropdownRow"> <label class="control-label col-sm-2" for="suburb">Suburb</label> <div class="col-sm-10"> <div id="suburbSelect"> <select class="select-medium" name="suburb" id="suburb"> <option value="0" selected="selected">- -None Selected- -</option> <option value="2">BICKLEY VALE</option> <option value="1">BRINGELLY</option> <option value="3">CAMDEN</option> <option value="8">CAMDEN SOUTH</option> <option value="4">CATHERINE FIELD</option> <option value="7">CAWDOR</option> <option value="6">COBBITTY</option> <option value="5">CURRANS HILL</option> <option value="9">ELDERSLIE</option> <option value="10">ELLIS LANE</option> <option value="23">GLEDSWOOD HILLS</option> <option value="11">GRASMERE</option> <option value="22">GREGORY HILLS</option> <option value="12">HARRINGTON PARK</option> <option value="13">KIRKHAM</option> <option value="14">LEPPINGTON</option> <option value="24">LEPPINGTON</option> <option value="15">MOUNT ANNAN</option> <option value="16">NARELLAN</option> <option value="17">NARELLAN VALE</option> <option value="18">ORAN PARK</option> <option value="19">ROSSMORE</option> <option value="21">SMEATON GRANGE</option> <option value="20">SPRING FARM</option> <option value="99">UNKNOWN</option> </select> </div> </div> </div> <div class="form-group" id="unitNumberRow"> <label class="control-label col-sm-2" for="unitNum">Unit</label> <div class="col-sm-10"> <input type="text" class="text-mini" name="unitNum" id="unitNum" size="10" value="" /> </div> </div> <div class="form-group" id="houseNumRow"> <label class="control-label col-sm-2" for="houseNum">House No.</label> <div class="col-sm-10"> <div id="houseNumSelect"> <select class="select-medium" name="houseNum" id="houseNum"> <option value="0&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;">- -None Selected- -</option> </select> </div> </div> </div> <div class="form-group" id="planNumberRow"> <label class="control-label col-sm-2" for="planNumber">Plan</label> <div class="col-sm-10"> <input type="text" class="text-small" name="planNumber" id="planNumber" size="10" value="" /> </div> </div> <div class="form-group" id="strataPlanRow"> <label class="control-label col-sm-2" for="strataPlan">Strata Plan</label> <div class="col-sm-10"> <input type="text" class="text-small" name="strataPlan" id="strataPlan" size="10" value="" /> </div> </div> <div class="form-group" id="lotRow"> <label class="control-label col-sm-2" for="lotNumber">Lot</label> <div class="col-sm-10"> <input type="text" class="text-small" name="lotNumber" id="lotNumber" size="10" value="" /> </div> </div> <div class="form-group" id="propertyNameRow"> <label class="control-label col-sm-2" for="propertyName">Place</label> <div class="col-sm-10"> <input type="text" class="text-large" name="propertyName" id="propertyName" size="20" value="" /> </div> </div> <p class="rowDataOnly"> <span class="rowInfo"> <strong>AND</strong> the following search field: </span> </p> <p> &nbsp; </p> <h2>Options</h2> <label class="radio-inline control-label control-radio"> <input type="radio" name="searchMode" value="A" id="searchModeA" checked="checked" /> <span class="indicator" /> All DAs </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="searchMode" value="D" id="searchModeD" /> <span class="indicator" /> Determined DAs </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="searchMode" value="P" id="searchModeP" /> <span class="indicator" /> DAs Awaiting Decision </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="searchMode" value="C" id="searchModeC" /> <span class="indicator" /> On Exhibition </label> <div class="button-panel"> <input type="submit" name="submitButton" class="button" value="Search" onclick="javascript:checkDetDatesMakeSense()" /> <input type="button" name="clearButton" class="button" value="Clear" onclick="javascript:clearDaEnquiryFields()" /> </div> </form> </div> <!-- CIVICA-CONTENT-END:bodypanel1 --> </div> </div> </div> </div> </div> </div> </div> </div> <!-- container --> </div> <!-- content --> <div id="bottom" class="tabbed"> <div class="container" id="bottom-container"> <div class="row"> <div class="footer"> <p>&#169; Camden Council 2018 </p> <p id="web-context-path">/eservice</p> </div> </div> </div> </div> </div> <!-- End page div --> <!-- End Bootstrap eServices --> <!-- iServices --> </body> </html> ' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/json/common.rb:156:in `parse' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/json/common.rb:156:in `parse' /app/lib/masterview_scraper/get_applications_api.rb:50:in `scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:18:in `scrape' /app/lib/masterview_scraper.rb:97:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:33:in `<main>' Saving record 22 - 2025 - 21480 - 1 - 127 Clayton Rd, Roma 4455 QLD Collecting feed data for fraser_coast... maranoa: ERROR: Net::ReadTimeout /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:181:in `rbuf_fill' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:157:in `readuntil' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:167:in `readline' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http/response.rb:40:in `read_status_line' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http/response.rb:29:in `read_new' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:1494:in `block in transport_request' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:1491:in `catch' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:1491:in `transport_request' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:1464:in `request' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:891:in `block in request' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:606:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:104:in `block in scrape_api_period' /app/lib/masterview_scraper/get_applications_api.rb:23:in `block in scrape' /app/lib/masterview_scraper/get_applications_api.rb:60:in `block in scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:54:in `each' /app/lib/masterview_scraper/get_applications_api.rb:54:in `scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:18:in `scrape' /app/lib/masterview_scraper.rb:97:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' Collecting feed data for hawkesbury... fraser_coast: ERROR: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (unable to get local issuer certificate) /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:44:in `connect_nonblock' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:44:in `ssl_socket_connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:981:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:153:in `scrape_url' /app/lib/masterview_scraper.rb:61:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' Collecting feed data for toowoomba... hawkesbury: ERROR: Failed to open TCP connection to datrack.hawkesbury.nsw.gov.au:443 (getaddrinfo: Name or service not known) /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:939:in `rescue in block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:936:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:93:in `block in timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:153:in `scrape_url' /app/lib/masterview_scraper.rb:61:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' Collecting feed data for bundaberg... toowoomba: ERROR: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (ok) /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:44:in `connect_nonblock' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/protocol.rb:44:in `ssl_socket_connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:981:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:153:in `scrape_url' /app/lib/masterview_scraper.rb:61:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' Collecting feed data for wingecarribee... bundaberg: ERROR: 403 => Net::HTTPForbidden for https://da.bundaberg.qld.gov.au/ -- unhandled response /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:329:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:91:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' Collecting feed data for albury... wingecarribee: ERROR: Failed to open TCP connection to datracker.wsc.nsw.gov.au:443 (getaddrinfo: Name or service not known) /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:939:in `rescue in block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:936:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:93:in `block in timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:153:in `scrape_url' /app/lib/masterview_scraper.rb:61:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' albury: ERROR: execution expired Collecting feed data for bogan... /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `initialize' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `open' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:91:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' Collecting feed data for lismore... bogan: ERROR: Failed to open TCP connection to datracker.bogan.nsw.gov.au:81 (getaddrinfo: Name or service not known) /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:939:in `rescue in block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:936:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:93:in `block in timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:91:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' Saving record 5.2025.103.1 - 45 Mckenzie St, Lismore NSW 2480 Saving record 5.2025.98.1 - 895 Pinchin Rd, Goolmangar NSW 2480 Saving record 10.2025.79.2 - 176 Lindendale Rd, Lindendale NSW 2480 Saving record 5.2025.108.1 - 2 Auckram Rd, Mckees Hill NSW 2480 Saving record 5.2025.113.1 - 77 Standing St, The Channon NSW 2480 Saving record 10.2024.274.1 - 11 Emma Way, Goonellabah NSW 2480 Saving record 5.2021.472.5 - 1566 Bangalow Rd, Clunes NSW 2480 Saving record 5.2025.111.1 - 6 Grey Gum Cl, Caniaba NSW 2480 Saving record 5.2025.109.1 - 10 Grace Rd, Bexhill NSW 2480 Saving record 5.2025.106.1 - 74 Mahogany Pde, Goonellabah NSW 2480 Saving record 5.2025.107.1 - 90 Gundurimba Rd, Monaltrie NSW 2480 Saving record 5.2025.105.1 - 62 Wyrallah Rd, East Lismore NSW 2480 Saving record 5.2025.54.2 - 15 Hillside Dr, Nimbin NSW 2480 Saving record 5.2025.78.2 - 32 George Dr, Chilcotts Grass NSW 2480 Saving record 5.2025.92.1 - 1047 Bangalow Rd, Bexhill NSW 2480 Saving record 10.2025.61.1 - 174 Pelican Creek Rd, South Gundurimba NSW 2480 Saving record 5.2025.99.1 - 76 Nielson St, East Lismore NSW 2480 lismore: ERROR: Unexpected field in: Determination Type: Collecting feed data for port_macquarie_hastings... /app/lib/masterview_scraper/pages/detail.rb:198:in `block in extract_decision_block' /app/lib/masterview_scraper/pages/detail.rb:189:in `each' /app/lib/masterview_scraper/pages/detail.rb:189:in `extract_decision_block' /app/lib/masterview_scraper/pages/detail.rb:209:in `scrape_new_version' /app/lib/masterview_scraper/pages/detail.rb:12:in `scrape' /app/lib/masterview_scraper.rb:112:in `block in scrape_api_period' /app/lib/masterview_scraper/get_applications_api.rb:23:in `block in scrape' /app/lib/masterview_scraper/get_applications_api.rb:60:in `block in scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:54:in `each' /app/lib/masterview_scraper/get_applications_api.rb:54:in `scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:18:in `scrape' /app/lib/masterview_scraper.rb:97:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' Collecting feed data for port_stephens... port_macquarie_hastings: ERROR: execution expired /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `initialize' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `open' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:91:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' port_stephens: ERROR: execution expired Collecting feed data for singleton... /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `initialize' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `open' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:937:in `block in connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/timeout.rb:103:in `timeout' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:935:in `connect' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:920:in `do_start' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/net/http.rb:915:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:655:in `start' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:595:in `connection_for' /app/vendor/bundle/ruby/2.5.0/gems/net-http-persistent-4.0.1/lib/net/http/persistent.rb:885:in `request' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize/http/agent.rb:280:in `fetch' /app/vendor/bundle/ruby/2.5.0/gems/mechanize-2.7.7/lib/mechanize.rb:464:in `get' /app/lib/masterview_scraper.rb:91:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' Saving record 8.2025.135.1 - 14 Beh Cl, Singleton Heights NSW 2330 Saving record 8.2025.143.1 - 8 Victoria St, Glenridding NSW 2330 Saving record 10.2025.22.1 - 37 Kennedy St, Singleton NSW 2330 Saving record 8.2025.142.1 - 13 Radford Pwy, Branxton NSW 2335 Saving record 10.2024.303.1 - 20 Hunter St, Singleton NSW 2330 Saving record 8.2025.122.1 - 12 Turnbull Rd, Bulga NSW 2330 Saving record 8.2025.140.1 - 4 Maybon Cl, Branxton NSW 2335 Saving record 10.2024.140.1 - 6 York St, Singleton NSW 2330 Saving record 8.2025.138.1 - 42 Freeman Cl, Wattle Ponds NSW 2330 Saving record 12.2024.286.1 - 27 Robertson Cct, Sedgefield NSW 2330 Saving record 15.2025.25.1 - 17 Green Gr, Sedgefield NSW 2330 Saving record 10.2024.84.1 - 38 Willcox Ave, Singleton Heights NSW 2330 Saving record 12.2024.209.1 - 39A Aub Upward Cl, Wattle Ponds NSW 2330 Saving record 15.2025.26.1 - 169 Springvale Rd, Elderslie NSW 2335 Saving record 8.2025.137.1 - 2 James Cook Ave, Singleton Heights NSW 2330 Saving record 12.2021.370.1 - 1224 Milbrodale Rd, Broke NSW 2330 Saving record 10.2025.108.1 - 41 Broomfield Cres, Hunterview NSW 2330 Saving record 12.2024.36.1 - 64 Greenwood Ave, Redbournberry NSW 2330 Saving record 8.2025.132.1 - 5 Kirkwood Pl, Branxton NSW 2335 Saving record 8.2025.126.1 - 575 Westbrook Rd, Westbrook NSW 2330 Saving record 8.2025.124.1 - 2 Dargin Cl, Singleton Heights NSW 2330 Saving record 8.2025.115.1 - 56 Pin Oak Cct, Branxton NSW 2335 Saving record 8.2025.136.1 - 38A Falkiner Cres, Singleton Heights NSW 2330 Saving record 8.2021.293.2 - 251 Putty Rd, Glenridding NSW 2330 Saving record 8.2025.104.1 - 1 Gowrie St, Singleton NSW 2330 Saving record 8.2024.220.2 - 13 Mitchell Line Of Rd, Whittingham NSW 2330 Saving record 12.2019.242.1 - 332 Standen Dr, Lower Belford NSW 2335 Saving record 8.2023.514.2 - 913 Hermitage Rd, Pokolbin NSW 2320 Saving record 8.2025.129.1 - 40 Dimmock St, Hunterview NSW 2330 Saving record 8.2025.134.1 - 31 Freeman Cl, Wattle Ponds NSW 2330 Saving record 8.2025.131.1 - 26 Maskey Rd, Mount Thorley NSW 2330 singleton: ERROR: Unexpected field in: Determination Type: Collecting feed data for camden... /app/lib/masterview_scraper/pages/detail.rb:198:in `block in extract_decision_block' /app/lib/masterview_scraper/pages/detail.rb:189:in `each' /app/lib/masterview_scraper/pages/detail.rb:189:in `extract_decision_block' /app/lib/masterview_scraper/pages/detail.rb:209:in `scrape_new_version' /app/lib/masterview_scraper/pages/detail.rb:12:in `scrape' /app/lib/masterview_scraper.rb:112:in `block in scrape_api_period' /app/lib/masterview_scraper/get_applications_api.rb:23:in `block in scrape' /app/lib/masterview_scraper/get_applications_api.rb:60:in `block in scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:54:in `each' /app/lib/masterview_scraper/get_applications_api.rb:54:in `scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:18:in `scrape' /app/lib/masterview_scraper.rb:97:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' camden: ERROR: 765: unexpected token at '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en-US"> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" /> <title> Authority e-Services - live </title> <link rel="stylesheet" href="/eservice/library/bootstrap-3.4.1.min.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/jquery-ui.min.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/jquery-ui.structure.min.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/jquery-ui.theme.min.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/e-services.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/calendar.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/eservice/library/daEnquiry_daEnquiry.css" id="pagecss" type="text/css" media="screen, projection" > <link rel="stylesheet" href="/eservice/library/e-print.css" type="text/css" media="print" > <link rel="stylesheet" href="/eservice/library/header-eserv.css" type="text/css" media="screen, projection, print" > <link rel="stylesheet" href="/council/eservice/custom.css" type="text/css" media="screen, projection, print" > <script>var AUTHJS = {};AUTHJS.productName = "i-Services";</script> <script type="text/javascript" src="/eservice/jscalendar-1.0/calendar.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery/jquery-3.6.0.min.js"></script> <script>AUTHJS.productName = "e-Services";</script> <script type="text/javascript" src="/eservice/javascript/tether-1.3.3.js"></script> <script type="text/javascript" src="/eservice/javascript/modernizr-283.min.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery/bootstrap-3.4.1.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery/jquery-ui.min.js"></script> <script type="text/javascript" src="/eservice/javascript/e-services-page.js"></script> <script type="text/javascript" src="/eservice/javascript/prototype.js"></script> <script type="text/javascript" src="/eservice/javascript/civica.jquery.plugins.js"></script> <script type="text/javascript" src="/eservice/javascript/civica.common.init.js"></script> <script type="text/javascript" src="/eservice/javascript/civica.jquery.functions.js"></script> <script type="text/javascript" src="/eservice/javascript/util.js"></script> <script type="text/javascript" src="/eservice/javascript/json2.js"></script> <script type="text/javascript" src="/eservice/javascript/effects.js"></script> <script type="text/javascript" src="/eservice/javascript/controls.js"></script> <script type="text/javascript" src="/eservice/javascript/dragdrop.js"></script> <script type="text/javascript" src="/eservice/javascript/lightbox.js"></script> <script type="text/javascript" src="/eservice/javascript/menu.js"></script> <script type="text/javascript" src="/eservice/javascript/menuScroll.js"></script> <script type="text/javascript" src="/eservice/javascript/sitemap.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery.imageTickBox.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery.metadata.js"></script> <script type="text/javascript" src="/eservice/javascript/jquery/jquery.form-3.46.0.js"></script> <link rel="shortcut icon" href="/favicon.ico" /> <script src="/eservice/javascript/da.js" type="text/javascript"></script> <script src="/eservice/javascript/mkTree.js" type="text/javascript"></script> </head> <body > <script type="text/javascript"> var initialTabPage= "null"; jQuery(document).ready(function() { if (initialTabPage != "null") { if (initialTabPage=="sitemap"){ initialTabPage="#sitemap-controller"; } else { initialTabPage="#dashboard-controller"; } jQuery(initialTabPage + " a.tab-clicker").not(".tabs-content *").click(); } }); (function() { var isBootstrapEvent = false; if (window.jQuery) { var all = jQuery('*'); jQuery.each(['hide.bs.dropdown', 'hide.bs.collapse', 'hide.bs.modal', 'hide.bs.tooltip', 'hide.bs.popover', 'hide.bs.tab'], function(index, eventName) { all.on(eventName, function( event ) { isBootstrapEvent = true; }); }); } var originalHide = Element.hide; Element.addMethods({ hide: function(element) { if(isBootstrapEvent) { isBootstrapEvent = false; return element; } return originalHide(element); } }); })(); </script> <!-- eServices --> <div id="page" class=" tabbed not-logged-in"> <div id="masthead" class="navbar navbar-static-top bs-docs-nav"> <div class="container" id="masthead-container"> <div class="navbar-header"> <a class="navbar-brand"> <span>e-Services</span> Camden Council </a> </div> <!-- masthead Quicklinks start --> <div id="wrapper-quick-links"> <ul id="quick-links" class="nav navbar-nav navbar-right"> <li class="top-link-home"> <a href="/eservice/navigationStart.do" id="quick-link-home"> Home </a> </li> <li class="top-link-signin"> <a href="/eservice/logonInit.do" id="quick-link-signin"> Sign In </a> </li> <li class="top-link-user"> <a> <!-- masthead User start --> You are a Guest <!-- masthead User end --> </a> </li> </ul> </div> <!-- masthead Quicklinks end --> </div> <!-- End container --> </div> <!-- End Masthead --> <!-- End Masthead navbar --> <div id="content"> <div class="container" id="content-container"> <div class="row" id="main-row"> <div class="col-sm-3" id="bstrap-leftnav"> <div id="search-results" > </div> <div id="admin-tabs" > <div id="dashboard" class="tabs-content"> <!-- START MENU CONTENT --> <div id="menus-toggle"> <div id="menus-button" class="btn btn-default"> <span id="menus-button-inner"> <a id="menus-button-link" href="#">Hide Menus</a> </span> </div> <div id="site-access" class="menu-on"> <ul id="siteaccesspanel"> <li id="siteaccesspanel_1"> <div class="menu-group"> <div class="menu-header-panel" title="Drag to change panel order"> <h3 class="panel-handle">Menu</h3> </div> <p class="menu-handlers"> <a href="/eservice/menu/minimisePanel.do?id=1" title="Minimise Panel" class="panel-min-max" id="panel-min-max-1" > <img src="/eservice/icons/minimise.gif" alt="Minimise" /> </a> </p> <div id="menu-search"> <form action="/eservice/menu/search.do" class="menu-search-form"> <p> <input type="text" size="15" name="search" id="search" class="field" value="Menu Search" /> <input type="submit" id="menu-search-submit" value="Go" class="buttonCalendar" /> <img src="/eservice/icons/loading.gif" alt="loading" class="loading" id="menu-search-loading" /> </p> <!-- div id="search-autocomplete" class="autocompleter"></div --> </form> <div id="search-results" > </div> </div> <div id="scrollingMenuContainer" class="scrolling-container"> <ul id="navigation"> <li class="nav-return" title="Back one menu level"><a href="/eservice/navigationStart.do" id="node-0"><img src="/eservice/icons/parent.gif" alt="Return to " />Applications</a></li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=10&nodeNum=3374010" class="linkitem" id="node-3374010">Development Application</a> </li> <li class='java'> <a href="/eservice/daEnquiry/currentlyAdvertised.do?nodeNum=3374975" class="linkitem" id="node-3374975">On Exhibition</a> </li> <li class='java'> <a href="/eservice/daEnquiry/recentlySubmitted.do?rangeType=M&rangeFrom=1&rangeTo=0&nodeNum=3374985" class="linkitem" id="node-3374985">Recently Submitted</a> </li> <li class='java'> <a href="/eservice/daEnquiry/recentlyDetermined.do?num_days=30&nodeNum=3374976" class="linkitem" id="node-3374976">Recently Determined</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=12&nodeNum=3374979" class="linkitem" id="node-3374979">Complying Development Certificate</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=11&nodeNum=3374980" class="linkitem" id="node-3374980">Construction Certificate</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=14&nodeNum=3374982" class="linkitem" id="node-3374982">Subdivision Certificate</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=13&nodeNum=3374986" class="linkitem" id="node-3374986">Occupation Certificate</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=16&nodeNum=3374987" class="linkitem" id="node-3374987">Engineering Construction</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=100&nodeNum=3374981" class="linkitem" id="node-3374981">Tree Development Application</a> </li> <li class='java'> <a href="/eservice/daEnquiryInit.do?doc_typ=27&nodeNum=3374011" class="linkitem" id="node-3374011">Fire Safety Schedule</a> </li> </ul> </div> </div> </li> <li id="siteaccesspanel_3"> <div class="menu-group"> <div class="menu-header-panel" title="Drag to change panel order"> <h3 class="panel-handle">History</h3> </div> <p class="menu-handlers"> <a href="/eservice/menu/movePanel.do?id=2" title="Panel Up" class="panel-up"> <img src="/eservice/icons/panel_move_up.gif" alt="Up" /></a> <a href="/eservice/menu/minimisePanel.do?id=2" title="Minimise Panel" class="panel-min-max" id="panel-min-max-2" > <img src="/eservice/icons/minimise.gif" alt="Minimise" /> </a> </p> <ul id="recently-used"> <li id="recently-used-0"> <a href="/eservice/daEnquiryInit.do?doc_typ=10&nodeNum=3374010" class="linkitem">Development Application</a> </li> </ul> </div> </li> </ul> <script type="text/javascript"> //Drag n Drop panels Sortable.create('siteaccesspanel', {handle: 'panel-handle', onUpdate:function(){new Ajax.Request(webContextPath + '/resequencePanels.do', {method: 'post', parameters:Sortable.serialize('siteaccesspanel')})}}); </script> <p id="scroll-trigger">15</p> <p id="alternate-scroll-trigger"></p> <p id="pixel-height-base-rate-for-list-item">24</p> </div> </div> </div> </div> </div> <div class="col-sm-9" id="bstrap-main"> <div id="main-content"> <div class="transaction-area" id="transaction-area"></div> <!-- END MENU CONTENT --> <div class="unique-content" id="daEnquiry_daEnquiry"> <div class="daEnquirySpecific" id="daEnquiry_daEnquiryDocumentType10"> <h1> Development Application Enquiry </h1> <div id="leftcontent"> <div class="infopanel"> <!-- CIVICA-INFO-START --> <div id="infopanel-header"> <h4 class="entryHeader" > Instructions </h4> </div> <div id="instructions-content" class="instructions"> <p>Enter some search criteria and select Search. If the search you entered does not yield any results, try broadening the search.</p> <p>When searching by the number, please enter the application number followed by the year, as in the example below.</p> </div> <!-- CIVICA-INFO-END --> </div> </div> <div id="rightcontent"> <div class="bodypanel" id="bodypanel1"> <!-- CIVICA-CONTENT-START:bodypanel1 --> <h2 > Details </h2> <?xml version="1.0" encoding="UTF-8"?> <div> <form action="daEnquiry.do" id="daEnquiryForm" name="daEnquiryForm" class="form-horizontal"> <div class="form-group"> <label class="col-sm-2 control-label">DA Number</label> <div class="col-sm-10"> <input type="text" class="text-medium" name="number" id="DANumber" size="10" maxlength="10" errors="DANumber" value="" /> <span class="subText">eg 121/2023</span> </div> </div> <p /> <p class="rowDataOnly"> <span class="rowInfo"> <strong>OR</strong> use any of the following search fields: </span> </p> <p> &nbsp; </p> <h2>Lodgement Date</h2> <div class="form-group" style="margin-bottom:2em; border:none; padding:0"> <div class="form-group" style="margin-bottom:2em"> <label class="radio-inline control-label control-radio" style="margin-left:10px"> <input type="radio" name="lodgeRangeType" id="lodgeRangeType" onclick="javascript:setDateRange('', '', 'DADateFrom', 'DADateTo')" /> Specified Range </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="lodgeRangeType" id="lodgeRangeType" onclick="javascript:setDateRange('01/06/2025','02/06/2025', 'DADateFrom', 'DADateTo')" /> This Week </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="lodgeRangeType" id="lodgeRangeType" onclick="javascript:setDateRange('25/05/2025','31/05/2025', 'DADateFrom', 'DADateTo')" /> Last Week </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="lodgeRangeType" id="lodgeRangeType" onclick="javascript:setDateRange('01/06/2025','30/06/2025', 'DADateFrom', 'DADateTo')" /> This Month </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="lodgeRangeType" id="lodgeRangeType" onclick="javascript:setDateRange('01/05/2025','31/05/2025', 'DADateFrom', 'DADateTo')" /> Last Month </label> </div> </div> <div class="form-group"> <div id="DADate"> <label class="col-sm-2 control-label" for="DADateFrom" id="daFromDateLabel">From</label> <div class="form-inline col-sm-10"> <input type="text" class="datepick text-small form-control" name="dateFrom" id="DADateFrom" style="padding-right: 0px" size="10" maxlength="10" errors="DADateFrom" value="" /> <label for="DADateTo" id="daToDateLabel">To</label> <input type="text" class="datepick text-small form-control" name="dateTo" id="DADateTo" style="padding-right: 0px" size="10" maxlength="10" errors="DADateTo" value="" /> </div> </div> </div> <h2>Determination Date</h2> <div class="form-group" style="margin-bottom:2em; border:none; padding:0"> <div class="form-group" style="margin-bottom:2em"> <label class="radio-inline control-label control-radio" style="margin-left:10px"> <input type="radio" name="detRangeType" id="detRangeType" onclick="javascript:setDateRange('','', 'detDateFromString', 'detDateToString')" /> Specified Range </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="detRangeType" id="detRangeType" onclick="javascript:setDateRange('01/06/2025','02/06/2025', 'detDateFromString', 'detDateToString')" /> This Week </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="detRangeType" id="detRangeType" onclick="javascript:setDateRange('25/05/2025','31/05/2025', 'detDateFromString', 'detDateToString')" /> Last Week </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="detRangeType" id="detRangeType" onclick="javascript:setDateRange('01/06/2025','30/06/2025', 'detDateFromString', 'detDateToString')" /> This Month </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="detRangeType" id="detRangeType" onclick="javascript:setDateRange('01/05/2025','31/05/2025', 'detDateFromString', 'detDateToString')" /> Last Month </label> </div> </div> <div class="form-group"> <div id="DetDate"> <label class="col-sm-2 control-label" for="detDateFrom" id="detFromDateLabel">From</label> <div class="form-inline col-sm-10" id="detDateFromInput"> <input type="text" class="datepick text-small form-control" name="detDateFrom" id="detDateFromString" style="padding-right: 0px" size="10" maxlength="10" errors="detDateFrom" value="" /> <label for="detDateTo" id="detToDateLabel">To</label> <input type="text" class="datepick text-small form-control" name="detDateTo" id="detDateToString" style="padding-right: 0px" size="10" maxlength="10" errors="detDateTo" value="" /> </div> </div> </div> <h2>Property Details</h2> <div class="form-group" id="streetNameRow"> <label class="control-label col-sm-2" for="streetName">Street Name</label> <div class="col-sm-10"> <input type="text" class="text-large" name="streetName" id="streetName" size="20" onblur="javascript:getHouseNum(); javascript:getSuburb()" value="" /> <div id="streetHints" class="autocompleter"> &nbsp; </div> </div> </div> <div class="form-group" id="suburbDropdownRow"> <label class="control-label col-sm-2" for="suburb">Suburb</label> <div class="col-sm-10"> <div id="suburbSelect"> <select class="select-medium" name="suburb" id="suburb"> <option value="0" selected="selected">- -None Selected- -</option> <option value="2">BICKLEY VALE</option> <option value="1">BRINGELLY</option> <option value="3">CAMDEN</option> <option value="8">CAMDEN SOUTH</option> <option value="4">CATHERINE FIELD</option> <option value="7">CAWDOR</option> <option value="6">COBBITTY</option> <option value="5">CURRANS HILL</option> <option value="9">ELDERSLIE</option> <option value="10">ELLIS LANE</option> <option value="23">GLEDSWOOD HILLS</option> <option value="11">GRASMERE</option> <option value="22">GREGORY HILLS</option> <option value="12">HARRINGTON PARK</option> <option value="13">KIRKHAM</option> <option value="14">LEPPINGTON</option> <option value="24">LEPPINGTON</option> <option value="15">MOUNT ANNAN</option> <option value="16">NARELLAN</option> <option value="17">NARELLAN VALE</option> <option value="18">ORAN PARK</option> <option value="19">ROSSMORE</option> <option value="21">SMEATON GRANGE</option> <option value="20">SPRING FARM</option> <option value="99">UNKNOWN</option> </select> </div> </div> </div> <div class="form-group" id="unitNumberRow"> <label class="control-label col-sm-2" for="unitNum">Unit</label> <div class="col-sm-10"> <input type="text" class="text-mini" name="unitNum" id="unitNum" size="10" value="" /> </div> </div> <div class="form-group" id="houseNumRow"> <label class="control-label col-sm-2" for="houseNum">House No.</label> <div class="col-sm-10"> <div id="houseNumSelect"> <select class="select-medium" name="houseNum" id="houseNum"> <option value="0&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;">- -None Selected- -</option> </select> </div> </div> </div> <div class="form-group" id="planNumberRow"> <label class="control-label col-sm-2" for="planNumber">Plan</label> <div class="col-sm-10"> <input type="text" class="text-small" name="planNumber" id="planNumber" size="10" value="" /> </div> </div> <div class="form-group" id="strataPlanRow"> <label class="control-label col-sm-2" for="strataPlan">Strata Plan</label> <div class="col-sm-10"> <input type="text" class="text-small" name="strataPlan" id="strataPlan" size="10" value="" /> </div> </div> <div class="form-group" id="lotRow"> <label class="control-label col-sm-2" for="lotNumber">Lot</label> <div class="col-sm-10"> <input type="text" class="text-small" name="lotNumber" id="lotNumber" size="10" value="" /> </div> </div> <div class="form-group" id="propertyNameRow"> <label class="control-label col-sm-2" for="propertyName">Place</label> <div class="col-sm-10"> <input type="text" class="text-large" name="propertyName" id="propertyName" size="20" value="" /> </div> </div> <p class="rowDataOnly"> <span class="rowInfo"> <strong>AND</strong> the following search field: </span> </p> <p> &nbsp; </p> <h2>Options</h2> <label class="radio-inline control-label control-radio"> <input type="radio" name="searchMode" value="A" id="searchModeA" checked="checked" /> <span class="indicator" /> All DAs </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="searchMode" value="D" id="searchModeD" /> <span class="indicator" /> Determined DAs </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="searchMode" value="P" id="searchModeP" /> <span class="indicator" /> DAs Awaiting Decision </label> <label class="radio-inline control-label control-radio"> <input type="radio" name="searchMode" value="C" id="searchModeC" /> <span class="indicator" /> On Exhibition </label> <div class="button-panel"> <input type="submit" name="submitButton" class="button" value="Search" onclick="javascript:checkDetDatesMakeSense()" /> <input type="button" name="clearButton" class="button" value="Clear" onclick="javascript:clearDaEnquiryFields()" /> </div> </form> </div> <!-- CIVICA-CONTENT-END:bodypanel1 --> </div> </div> </div> </div> </div> </div> </div> </div> <!-- container --> </div> <!-- content --> <div id="bottom" class="tabbed"> <div class="container" id="bottom-container"> <div class="row"> <div class="footer"> <p>&#169; Camden Council 2018 </p> <p id="web-context-path">/eservice</p> </div> </div> </div> </div> </div> <!-- End page div --> <!-- End Bootstrap eServices --> <!-- iServices --> </body> </html> ' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/json/common.rb:156:in `parse' /app/vendor/ruby-2.5.1/lib/ruby/2.5.0/json/common.rb:156:in `parse' /app/lib/masterview_scraper/get_applications_api.rb:50:in `scrape_page' /app/lib/masterview_scraper/get_applications_api.rb:18:in `scrape' /app/lib/masterview_scraper.rb:97:in `scrape_api_period' /app/lib/masterview_scraper.rb:48:in `scrape_period' /app/lib/masterview_scraper.rb:19:in `scrape' scraper.rb:16:in `block in scrape' scraper.rb:12:in `each' scraper.rb:12:in `scrape' scraper.rb:39:in `<main>' scraper.rb:43:in `<main>': There were errors with the following authorities: [:maranoa, :fraser_coast, :hawkesbury, :toowoomba, :bundaberg, :wingecarribee, :albury, :bogan, :lismore, :port_macquarie_hastings, :port_stephens, :singleton, :camden]. See earlier output for details (RuntimeError)

Data

Downloaded 86 times by dcalde AndreM101 muzzie86 jamasalbertastash studiology repose-lecture

To download data sign in with GitHub

Download table (as CSV) Download SQLite database (19.1 MB) Use the API

rows 10 / 49780

council_reference address description info_url date_scraped date_received authority_label
10-2021-16-1
2 Angus St, Forbes 2871 NSW
New Garages/Sheds - Industrial
2021-03-16
2021-02-22
forbes
10-2021-15-1
613 Wongajong Rd, Forbes 2871 NSW
New Single Dwelling
2021-03-16
2021-02-18
forbes
10-2021-13-1
1829 Lachlan Valley Wy, Jemalong 2871 NSW
New Single Dwelling
2021-03-16
2021-02-15
forbes
10-2021-14-1
131A Wambat St, Forbes 2871 NSW
New Ancillary Residential Development - Shed
2021-03-16
2021-02-16
forbes
10-2017-80-3
33-37 Sam St, Forbes 2871 NSW
New Commercial Building
2021-03-16
2021-03-03
forbes
10-2021-19-1
36A William St, Forbes 2871 NSW
Patio Cover
2021-03-16
2021-03-05
forbes
10-2021-20-1
2 Rae St, Forbes 2871 NSW
New Ancillary Residential Development-Shed/Carport
2021-03-16
2021-03-05
forbes
10-2021-18-1
12 Acacia Ave, Forbes 2871 NSW
New Ancillary Residential Development-Shed
2021-03-16
2021-03-02
forbes
10-2021-17-1
10 Thelma St, Forbes 2871 NSW
New Ancillary Residential Development - Shed
2021-03-16
2021-03-02
forbes
10-2021-1-1
Ooma St, Forbes 2871 NSW
Ancillary Residential Development - Awning
2021-03-16
2021-02-25
forbes

Statistics

Average successful run time: about 7 hours

Total run time: 2 months

Total cpu time used: about 4 hours

Total disk space used: 145 MB

History

  • Auto ran revision 028c1c13 and failed .
    114 records added, 87 records removed in the database
  • Auto ran revision 028c1c13 and failed .
    101 records added, 101 records removed in the database
  • Auto ran revision 028c1c13 and failed .
    104 records added, 104 records removed in the database
  • Auto ran revision 028c1c13 and failed .
    91 records added, 86 records removed in the database
  • Auto ran revision 028c1c13 and failed .
    141 records added, 124 records removed in the database
  • ...
  • Created on morph.io

Show complete history

Scraper code

Ruby

multiple_masterview / scraper.rb