48 lines
1.4 KiB
Python
48 lines
1.4 KiB
Python
import requests, os, sys
|
|
from icalendar import Calendar as iCalendar, Event
|
|
|
|
from datetime import datetime
|
|
from dateutil import relativedelta
|
|
td = relativedelta.relativedelta(hours=5)
|
|
|
|
from pprint import pprint as ppr
|
|
import pytz
|
|
|
|
import django
|
|
sys.path.append('../../../')
|
|
os.environ['DJANGO_SETTINGS_MODULE'] = 'ds_events.settings'
|
|
django.setup()
|
|
|
|
from events.models import Event as DSEvent, Organization, Scraper, Calendar
|
|
import events.digitools as digitools
|
|
from dateutil import relativedelta
|
|
td = relativedelta.relativedelta(hours=5)
|
|
|
|
|
|
venue, created = Organization.objects.get_or_create(
|
|
name="Sociable Ciderwerks",
|
|
city="Minneapolis",
|
|
website="https://sociablecider.com/events",
|
|
)
|
|
event_type = "Mu"
|
|
|
|
try:
|
|
scraper, created = Scraper.objects.get_or_create(
|
|
name="Sociable Ciderwerks",
|
|
website="https://calendar.google.com/calendar/ical/c_oa7uitvkn871o1ojl5e1os4ve8%40group.calendar.google.com/public/basic.ics",
|
|
calendar = Calendar.objects.get(id=1),
|
|
items = 0,
|
|
new_items = 0,
|
|
last_ran = datetime.now(),
|
|
)
|
|
except Exception as e:
|
|
print(e)
|
|
scraper = Scraper.objects.get(name=venue.name)
|
|
|
|
item_count_start = scraper.items
|
|
|
|
objIcalData = requests.get(scraper.website)
|
|
gcal = iCalendar.from_ical(objIcalData.text)
|
|
tz = pytz.timezone("US/Central")
|
|
digitools.getiCalEvents(gcal, scraper, venue)
|
|
digitools.updateScraper(scraper, item_count_start) |