DaanMatch - DaanMatch Morning Meeting#
📅 Wed Jan 18th, 2023
🕔 6:00pm 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#
Interviews Spring 2023 DS Discovery. Link to other projects
Finalizing who the letter is being sent to
Finishing off Figma
Translate data fields for form
3. DS Discovery Program#
Need all sites in order of priority to be webscraped. Expand web-scraping efforts, see if this could be automated.
Data Transformation to Data Model. Consider building data model for Donor side. Transfering from MySQL to PosgreSQL.
Research Project: Identify registration documents, Aadhar Card and create a library for reference. How the registration number are standardized state by state.
Create dashboard from NGO activity and information. Full information from a couple NGOs.
Geocoding, automating that with GitHub actions.
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