Skip to content

Commit

Permalink
Merge pull request #3 from hxtk/database-dependency-injection
Browse files Browse the repository at this point in the history
Dependency Injection of database
  • Loading branch information
hxtk committed Aug 3, 2018
2 parents ba876de + 401063a commit a7c57ca
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 6 deletions.
6 changes: 3 additions & 3 deletions noaa.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,11 @@ def __init__(self, stations, geolocator):
self.geolocator = geolocator # geopy geolocator

@staticmethod
def scrape_noaa(geolocator, db_query):
def scrape_noaa(geolocator, database, query):
station_page = requests.get(STATION_LIST_URL)
stations = []
for match in re.finditer(STATION_LISTING_PATTERN, station_page.text):
search = NOAA.module_db.search(db_query.station.id_ == match[0])
search = database.search(db_query.station.id_ == match[0])
if search is None:
stat_id = match[1]
stat_name = match[2]
Expand All @@ -56,7 +56,7 @@ def scrape_noaa(geolocator, db_query):

station_object = Station(latitude, longitude, stat_name, stat_id)
stations.append(station_object)
NOAA.module_db.insert({'station': station_object})
database.insert({'station': station_object})
else:
stations.append(search)
return StationGlobe(stations, geolocator)
Expand Down
10 changes: 7 additions & 3 deletions noaa_scraping.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@
from geopy import geocoders
from geopy.extra.rate_limiter import RateLimiter

geolocator = geocoders.Nominatim(user_agent='scubot', timeout=5)
geolocator.geocode = RateLimiter(geolocator.geocode, min_delay_seconds=1)
station_globe = noaa.StationGlobe.scrape_noaa(geolocator, Query())
def main():
geolocator = geocoders.Nominatim(user_agent='scubot', timeout=5)
geolocator.geocode = RateLimiter(geolocator.geocode, min_delay_seconds=1)
station_globe = noaa.StationGlobe.scrape_noaa(geolocator, TinyDB('noaa.json'), Query())

if __name__ == '__main__':
main()

0 comments on commit a7c57ca

Please sign in to comment.