56 lines
1.6 KiB
Python
56 lines
1.6 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
|
|
|
|
sys.path.append('/var/www/digisnaxx.ado/scrapers')
|
|
import dtss
|
|
dtss.getReady()
|
|
|
|
from events.models import Event as DSEvent, Organization, Scraper, Calendar
|
|
import events.digitools as digitools
|
|
|
|
venue, created = Organization.objects.get_or_create(
|
|
name="Online Events",
|
|
city="Online",
|
|
website="https://dreamfreely.org/",
|
|
)
|
|
event_type = "Mu"
|
|
|
|
try:
|
|
scraper, created = Scraper.objects.get_or_create(
|
|
name="Online Events",
|
|
website="https://calendar.google.com/calendar/ical/p1a4r9glkjpu4u6iv3fkmu8qtc%40group.calendar.google.com/public/basic.ics",
|
|
calendar = Calendar.objects.get(shortcode='000'),
|
|
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)
|
|
|
|
counter = 0
|
|
|
|
digitools.getiCalRepeateEvents(gcal, scraper, venue, "Ed", cal)
|
|
digitools.updateScraper(scraper, item_count_start)
|
|
|
|
new_time = datetime.now() - timedelta(days=1)
|
|
right_bound_time = datetime.now() + timedelta(days=45)
|
|
events = DSEvent.objects.filter(show_date__lte=new_time)
|
|
events1 = DSEvent.objects.filter(show_date__gte=right_bound_time)
|
|
|
|
for e in events:
|
|
e.delete()
|
|
|
|
for e in events1:
|
|
e.delete() |