-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtaco_scraper.py
More file actions
29 lines (24 loc) · 849 Bytes
/
taco_scraper.py
File metadata and controls
29 lines (24 loc) · 849 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import requests
class TacoBellScraper(object):
def fetch_data(self, zip_code):
url = 'https://www.tacobell.com/store-finder/findStores?q={}'.format(zip_code)
zipcode_results = requests.get(url)
return zipcode_results.json()['nearByStores']
def parse_record(self, record):
formatted_record = {
'store_id': record['storeNumber'],
'latitude': record['geoPoint']['latitude'],
'longitude': record['geoPoint']['longitude'],
'address': record['address']['formattedAddress']
}
return formatted_record
# def uniquify_records(self, records):
# nice-to-have later
# pass
def process(self):
zipcodes = [10003, 33477]
all_results = []
for zipcode in zipcodes:
for record in self.fetch_data(zipcode):
all_results.append(self.parse_record(record))
return all_results