DaanMatch - DaanMatch Morning Meeting#
📅 Wed Nov 30th, 2022
🕔 6:30pm PST
🔗 https://meet.google.com/hnr-fwck-pod
1. Call to Order#
Patrick Guo - guopatrick.comping@gmail.com
Kenneth Kron - kronsensei@gmail.com
Cara Foss Arellano - cara.arellano@berkeley.edu
2. Discussion#
Finished application for Spring 2023 DS Discovery. Link to other projects
Jarrett provided documentation for updating ArcGIS Instant App
Finalizing letter to send to NGOs from CSR summit
Finishing off Figma
Translate data fields for form
3. DS Discovery Program Objectives#
Identify registration documents, Aadhar Card and create a library for reference. How the registration number are standardized state by state.
Expand web-scraping efforts, see if this could be automated
Create dashboard from NGO activity and information
Geocoding
4. Geocoding#
Convert address to new standard and then check reverse geocoder if it’s valid.
There are a few options for geocoding addresses for free:
Google Maps API: Google provides a geocoding API that allows you to convert addresses into geographic coordinates (latitude and longitude). You can use this API for free up to a certain number of requests per day, after which you will need to pay for additional requests. You can find more information about the Google Maps API and how to use it here: https://developers.google.com/maps/documentation/geocoding/start
OpenStreetMap: OpenStreetMap is a free and open-source mapping platform that provides geocoding services. You can use the Nominatim API to geocode addresses and place names for free, although there are some usage limits in place to ensure that the service remains available for everyone. You can find more information about the Nominatim API and how to use it here: https://wiki.openstreetmap.org/wiki/Nominatim
Geocode.xyz: Geocode.xyz is a free geocoding service that allows you to convert addresses and place names into geographic coordinates. You can use the API for free, although there are some usage limits in place. You can find more information about Geocode.xyz and how to use it here: https://geocode.xyz/api It’s important to note that all of these services have usage limits and terms of service that you should familiarize yourself with before using them.
def geocode_addresses(addresses):
# Create a list to store the results
results = []
# Iterate over the list of addresses
for address in addresses:
# Construct the API request URL
url = f"https://geocode.xyz/{address}?json=1"
# Make the request to the API
response = requests.get(url)
# Get the JSON data from the response
data = response.json()
# Check if the request was successful
if data["status"] == "OK":
# Get the latitude and longitude from the response
lat = data["latt"]
lng = data["longt"]
# Add the latitude and longitude to the results list
results.append((lat, lng))
else:
# If the request was not successful, add an error message to the results list
results.append(f"Error: {data['status']}")
# Return the results
return results