Scrapes planning applications data for InLinkUK from BT kiosks.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

31 lignes
982 B

  1. require 'uk_planning_scraper'
  2. require 'scraperwiki'
  3. keyword_searches = ['inlink', 'bt phone kiosk', 'communication hub']
  4. authorities = UKPlanningScraper::Authority.all
  5. authorities.each_with_index do |authority, i|
  6. puts "#{i + 1} of #{authorities.size}: #{authority.name}"
  7. keyword_searches.each_with_index do |search, j|
  8. puts "Scrape #{j + 1} of #{keyword_searches.size}: keywords: #{search}"
  9. begin
  10. applications = authority.validated_days(ENV['MORPH_DAYS'].to_i). \
  11. keywords(search).scrape
  12. applications.each do |application|
  13. # Backend keyword search is weak
  14. unless application[:description].match(/chainlink/i)
  15. ScraperWiki.save_sqlite(
  16. [:authority_name, :council_reference],
  17. application,
  18. 'applications')
  19. end
  20. end
  21. puts "#{authority.name}: #{applications.size} application(s) saved."
  22. rescue StandardError => e
  23. puts "Error: #{e}"
  24. end
  25. end
  26. end