def parse_location(self, response):
    properties = {'lon': float(response.xpath('//span/meta[@itemprop="longitude"]/@content').extract_first()), 'lat': float(response.xpath('//span/meta[@itemprop="latitude"]/@content').extract_first()), 'addr_full': response.xpath('//span[@class="c-address-street-1"]/text()').extract_first().strip(), 'city': response.xpath('//span[@itemprop="addressLocality"]/text()').extract_first(), 'state': response.xpath('//abbr[@itemprop="addressRegion"]/text()').extract_first(), 'postcode': response.xpath('//span[@itemprop="postalCode"]/text()').extract_first().strip(), 'phone': response.xpath('//span[@itemprop="telephone"]/text()').extract_first(), 'name': response.xpath('//span[@class="location-name-geo"]/text()').extract_first(), 'ref': response.url, 'website': response.url}
    hours_elem = response.xpath('//div[@class="c-location-hours-details-wrapper js-location-hours"]/@data-days')
    opening_hours = None
    if hours_elem:
        hours = json.loads(hours_elem.extract_first())
        opening_hours = self.store_hours(hours)
    if opening_hours:
        properties['opening_hours'] = opening_hours
    (yield GeojsonPointItem(**properties))
def parse_location(self, response):
    properties = {'lon': float(response.xpath('//span/meta[@itemprop="longitude"]/@content').extract_first()), 'lat': float(response.xpath('//span/meta[@itemprop="latitude"]/@content').extract_first()), 'addr_full': response.xpath('//span[@class="c-address-street-1"]/text()').extract_first().strip(), 'city': response.xpath('//span[@itemprop="addressLocality"]/text()').extract_first(), 'state': response.xpath('//abbr[@itemprop="addressRegion"]/text()').extract_first(), 'postcode': response.xpath('//span[@itemprop="postalCode"]/text()').extract_first().strip(), 'phone': response.xpath('//span[@itemprop="telephone"]/text()').extract_first(), 'name': response.xpath('//span[@class="location-name-geo"]/text()').extract_first(), 'ref': response.url, 'website': response.url}
    hours_elem = response.xpath('//div[@class="c-location-hours-details-wrapper js-location-hours"]/@data-days')
    opening_hours = None
    if hours_elem:
        hours = json.loads(hours_elem.extract_first())
        opening_hours = self.store_hours(hours)
    if opening_hours:
        properties['opening_hours'] = opening_hours
    (yield GeojsonPointItem(**properties))