Skip to content

Create Functionality to Download Datasets #3

@TheCedarPrince

Description

@TheCedarPrince

Issue Description

Difficulty: Beginner

Time: 10 hours

Description: This issue aims to create a Julia function within our geospatial package that can download shapefiles from the TIGER database based on pre-defined URLs. The function should allow users to control various aspects of the downloading process, such as refreshing cached data and displaying progress bars.

Requirements

  • Download shapefiles from the TIGER database using the provided URL.
    • Consider using DataDeps.jl for this
    • Create DataDeps registration method
  • Include option to force a refresh downloaded data
  • progress_bar option to display download progress.
  • Return a path for where this data was downloaded to
    • It can then be read into another function to interpret the geospatial files
  • Function tests

Expected Outcomes

The created Julia function should:

  1. Download shapefiles from the TIGER database based on the provided URL and filter options.
  2. Return the path to the shapefile
  3. Allow for controlling download behavior through additional options (progress bar, refreshing, etc.).

The API could look something like this:

function download_tigerfile(
	URL::String; 
	progress_bar::Bool = true, 
	refresh::Bool = false
)

#= 

Your awesome code here!

=#

	return download_path

end

And then when you run it it would look like this:

julia> download_function(my_url)
100% complete!
@info Files downloaded to /home/datadeps/shapefiles

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions