PROJECT (event_scrapers)
SPIDER (o_neills)
2026-06-16 13:21:14 [scrapy.utils.log] INFO: Scrapy 2.14.1 started (bot: event_scrapers)
2026-06-16 13:21:14 [scrapy.utils.log] INFO: Versions:
{'lxml': '6.0.2',
'libxml2': '2.14.6',
'cssselect': '1.3.0',
'parsel': '1.10.0',
'w3lib': '2.0.0',
'Twisted': '25.5.0',
'Python': '3.12.3 (main, Mar 23 2026, 19:04:32) [GCC 13.3.0]',
'pyOpenSSL': '25.3.0 (OpenSSL 3.5.4 30 Sep 2025)',
'cryptography': '46.0.3',
'Platform': 'Linux-6.8.0-90-generic-x86_64-with-glibc2.39'}
2026-06-16 13:21:14 [scrapy.crawler] DEBUG: Using AsyncCrawlerProcess
2026-06-16 13:21:14 [asyncio] DEBUG: Using selector: EpollSelector
2026-06-16 13:21:14 [scrapy.addons] INFO: Enabled addons:
[]
2026-06-16 13:21:15 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor
2026-06-16 13:21:15 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop
2026-06-16 13:21:15 [scrapy.extensions.telnet] INFO: Telnet Password: 833fe95c2395374d
2026-06-16 13:21:15 [scrapy.middleware] INFO: Enabled extensions:
['scrapy.extensions.corestats.CoreStats',
'scrapy.extensions.logcount.LogCount',
'scrapy.extensions.telnet.TelnetConsole',
'scrapy.extensions.memusage.MemoryUsage',
'scrapy.extensions.feedexport.FeedExporter',
'scrapy.extensions.logstats.LogStats']
2026-06-16 13:21:15 [scrapy.crawler] INFO: Overridden settings:
{'BOT_NAME': 'event_scrapers',
'FEED_EXPORT_ENCODING': 'utf-8',
'FEED_URI_PARAMS': <function _feed_uri_params at 0x7ef3ad73c400>,
'LOG_FILE': '/root/event-list-scraping/logs/event_scrapers/o_neills/7aa56047697511f1be9e0050565fa5d9.log',
'NEWSPIDER_MODULE': 'event_scrapers.spiders',
'REQUEST_FINGERPRINTER_CLASS': 'scrapy_zyte_api.ScrapyZyteAPIRequestFingerprinter',
'SPIDER_MODULES': ['event_scrapers.spiders']}
2026-06-16 13:21:15 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
2026-06-16 13:21:15 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
2026-06-16 13:21:15 [scrapy.middleware] INFO: Enabled downloader middlewares:
['scrapy.downloadermiddlewares.offsite.OffsiteMiddleware',
'scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware',
'scrapy.downloadermiddlewares.downloadtimeout.DownloadTimeoutMiddleware',
'scrapy.downloadermiddlewares.defaultheaders.DefaultHeadersMiddleware',
'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware',
'scrapy.downloadermiddlewares.retry.RetryMiddleware',
'scrapy.downloadermiddlewares.redirect.MetaRefreshMiddleware',
'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware',
'scrapy.downloadermiddlewares.redirect.RedirectMiddleware',
'scrapy_zyte_api.ScrapyZyteAPIDownloaderMiddleware',
'scrapy.downloadermiddlewares.cookies.CookiesMiddleware',
'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware',
'scrapy.downloadermiddlewares.stats.DownloaderStats']
2026-06-16 13:21:15 [scrapy.middleware] INFO: Enabled spider middlewares:
['scrapy.spidermiddlewares.start.StartSpiderMiddleware',
'scrapy.spidermiddlewares.httperror.HttpErrorMiddleware',
'scrapy_zyte_api.ScrapyZyteAPISpiderMiddleware',
'scrapy.spidermiddlewares.referer.RefererMiddleware',
'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware',
'scrapy.spidermiddlewares.depth.DepthMiddleware',
'scrapy_zyte_api.ScrapyZyteAPIRefererSpiderMiddleware']
2026-06-16 13:21:15 [scrapy.middleware] INFO: Enabled item pipelines:
['event_scrapers.pipelines.EventScrapersPipeline']
2026-06-16 13:21:15 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/pipelines/__init__.py:47: ScrapyDeprecationWarning: EventScrapersPipeline.process_item() requires a spider argument, this is deprecated and the argument will not be passed in future Scrapy versions. If you need to access the spider instance you can save the crawler instance passed to from_crawler() and use its spider attribute.
self._check_mw_method_spider_arg(pipe.process_item)
2026-06-16 13:21:15 [scrapy.core.engine] INFO: Spider opened
2026-06-16 13:21:15 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.o_neills.OneillsOnoSpider defines the deprecated start_requests() method. start_requests() has been deprecated in favor of a new method, start(), to support asynchronous code execution. start_requests() will stop being called in a future version of Scrapy. If you use Scrapy 2.13 or higher only, replace start_requests() with start(); note that start() is a coroutine (async def). If you need to maintain compatibility with lower Scrapy versions, when overriding start_requests() in a spider class, override start() as well; you can use super() to reuse the inherited start() implementation without copy-pasting. See the release notes of Scrapy 2.13 for details: https://docs.scrapy.org/en/2.13/news.html
warn(
2026-06-16 13:21:15 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2026-06-16 13:21:15 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
2026-06-16 13:21:16 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://data.prod.gonation.com/profile/recurringevents?profile_id=4f4d458ab111aa3e8e000082&_=1774514106134&callback=axiosJsonpCallback1> (referer: None)
2026-06-16 13:21:16 [py.warnings] WARNING: /root/event-list-scraping/event_scrapers/spiders/o_neills.py:30: GuessedAtParserWarning: No parser was explicitly specified, so I'm using the best available HTML parser for this system ("lxml"). This usually isn't a problem, but if you run this code on another system, or in a different virtual environment, it may use a different parser and behave differently.
The code that caused this warning is on line 30 of the file /root/event-list-scraping/event_scrapers/spiders/o_neills.py. To get rid of this warning, pass the additional argument 'features="lxml"' to the BeautifulSoup constructor.
item['raw_body'] = str(bs(json.dumps(events)))
2026-06-16 13:21:16 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): 144.91.120.141:80
2026-06-16 13:21:16 [urllib3.connectionpool] DEBUG: http://144.91.120.141:80 "POST /api/v1/raw-events/ HTTP/1.1" 400 55
2026-06-16 13:21:16 [o_neills] ERROR: API error 400: {"platform_hash":["Platform 'O'Neill's' is archived."]}
2026-06-16 13:21:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://data.prod.gonation.com/profile/recurringevents?profile_id=4f4d458ab111aa3e8e000082&_=1774514106134&callback=axiosJsonpCallback1>
{'event_url': 'https://www.oneillsono.com/events/evt-PXOyGu9CS2CgAfOUF-udHA',
'platform': 'O neills',
'platform_hash': '72d8d63379d99cb23daf01b0d66c7804',
'raw_body': '<html><body>[{"_id": "evt-PXOyGu9CS2CgAfOUF-udHA", "name": '
'"Tuesday Trivia!!", "created": "2026-01-13T03:51:46.856Z", '
'"starts": "2026-01-14T00:30:00.000Z", "ends": '
'"2026-07-01T01:30:00.000Z", "going": [], "profile_id": '
'"bzn-RqJqA9UhRLmoyE3R_fzYrg", "description": "Family friendly '
'Trivia every Tuesday from 7.30pm to 9.30 pm. No Charge to play. '
'Half off all sliders. ", "eventDays": {"tuesday": {"start": '
'"00:30:00.000", "end": "02:30:00.000"}}, "eventTags": ["All '
'Ages"], "raves": 0, "rants": 0, "city": "Norwalk", "state": '
'"CT", "street": "93 North Main St", "zip": "06854", "tags": [], '
'"loc": [41.101869, -73.41975099999999], "ctas": {"cta2": "", '
'"cta1": ""}, "isFeatured": "", "videos": [], "imagePrefix": '
'"images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/9ad2e91a1bdf4a3e86d53a1626b460b4.jpg", '
'"imageBaseUrl": "https://res.cloudinary.com/gonation", '
'"imageurl": '
'"https://res.cloudinary.com/gonation/images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/9ad2e91a1bdf4a3e86d53a1626b460b4.jpg"}, '
'{"_id": "evt-eK17ENphTFOURlzekUdijQ", "name": "Live Music Every '
'Friday. 10pm-1am", "created": "2026-01-13T03:47:11.049Z", '
'"starts": "2026-01-17T03:00:00.000Z", "ends": '
'"2026-06-26T05:00:00.000Z", "going": [], "profile_id": '
'"bzn-RqJqA9UhRLmoyE3R_fzYrg", "description": "Join us every '
'Friday for some of the areas best live musicians come and play. '
'No Cover. ", "eventDays": {"friday": {"start": "03:00:00.000", '
'"end": "06:00:00.000"}}, "eventTags": ["21 and Older", "Beer", '
'"Drinks", "Food", "Live Music"], "raves": 0, "rants": 0, "city": '
'"Norwalk", "state": "CT", "street": "93 North Main St", "zip": '
'"06854", "tags": [], "loc": [41.101869, -73.41975099999999], '
'"ctas": {"cta2": "", "cta1": ""}, "isFeatured": "", "videos": '
'[], "imagePrefix": '
'"images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/ff7d2132f7c74852a07f9f5b7ef5117a.jpg", '
'"imageBaseUrl": "https://res.cloudinary.com/gonation", '
'"imageurl": '
'"https://res.cloudinary.com/gonation/images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/ff7d2132f7c74852a07f9f5b7ef5117a.jpg"}, '
'{"_id": "evt-m_4MsRVfSHi3-nbSX3YwqA", "name": "Live Music every '
'Saturday 10pm to 1am", "created": "2026-01-13T03:48:58.647Z", '
'"starts": "2026-01-18T03:00:00.000Z", "ends": '
'"2026-06-27T05:00:00.000Z", "going": [], "profile_id": '
'"bzn-RqJqA9UhRLmoyE3R_fzYrg", "description": "Join us every '
'Saturday from 10pm to 1am for the areas best musicians. No '
'Cover. ", "eventDays": {"saturday": {"start": "03:00:00.000", '
'"end": "06:00:00.000"}}, "eventTags": ["21 and Older", "Beer", '
'"Food", "Drinks", "Live Music"], "raves": 0, "rants": 0, "city": '
'"Norwalk", "state": "CT", "street": "93 North Main St", "zip": '
'"06854", "tags": [], "loc": [41.101869, -73.41975099999999], '
'"ctas": {"cta2": "", "cta1": ""}, "isFeatured": "", "videos": '
'[], "imagePrefix": '
'"images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/bd212248a3214b5e804d370dcc77f197.jpg", '
'"imageBaseUrl": "https://res.cloudinary.com/gonation", '
'"imageurl": '
'"https://res.cloudinary.com/gonation/images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/bd212248a3214b5e804d370dcc77f197.jpg"}]</body></html>'}
2026-06-16 13:21:16 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): 144.91.120.141:80
2026-06-16 13:21:16 [urllib3.connectionpool] DEBUG: http://144.91.120.141:80 "POST /api/v1/raw-events/ HTTP/1.1" 400 55
2026-06-16 13:21:16 [o_neills] ERROR: API error 400: {"platform_hash":["Platform 'O'Neill's' is archived."]}
2026-06-16 13:21:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://data.prod.gonation.com/profile/recurringevents?profile_id=4f4d458ab111aa3e8e000082&_=1774514106134&callback=axiosJsonpCallback1>
{'event_url': 'https://www.oneillsono.com/events/evt-eK17ENphTFOURlzekUdijQ',
'platform': 'O neills',
'platform_hash': '72d8d63379d99cb23daf01b0d66c7804',
'raw_body': '<html><body>[{"_id": "evt-PXOyGu9CS2CgAfOUF-udHA", "name": '
'"Tuesday Trivia!!", "created": "2026-01-13T03:51:46.856Z", '
'"starts": "2026-01-14T00:30:00.000Z", "ends": '
'"2026-07-01T01:30:00.000Z", "going": [], "profile_id": '
'"bzn-RqJqA9UhRLmoyE3R_fzYrg", "description": "Family friendly '
'Trivia every Tuesday from 7.30pm to 9.30 pm. No Charge to play. '
'Half off all sliders. ", "eventDays": {"tuesday": {"start": '
'"00:30:00.000", "end": "02:30:00.000"}}, "eventTags": ["All '
'Ages"], "raves": 0, "rants": 0, "city": "Norwalk", "state": '
'"CT", "street": "93 North Main St", "zip": "06854", "tags": [], '
'"loc": [41.101869, -73.41975099999999], "ctas": {"cta2": "", '
'"cta1": ""}, "isFeatured": "", "videos": [], "imagePrefix": '
'"images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/9ad2e91a1bdf4a3e86d53a1626b460b4.jpg", '
'"imageBaseUrl": "https://res.cloudinary.com/gonation", '
'"imageurl": '
'"https://res.cloudinary.com/gonation/images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/9ad2e91a1bdf4a3e86d53a1626b460b4.jpg"}, '
'{"_id": "evt-eK17ENphTFOURlzekUdijQ", "name": "Live Music Every '
'Friday. 10pm-1am", "created": "2026-01-13T03:47:11.049Z", '
'"starts": "2026-01-17T03:00:00.000Z", "ends": '
'"2026-06-26T05:00:00.000Z", "going": [], "profile_id": '
'"bzn-RqJqA9UhRLmoyE3R_fzYrg", "description": "Join us every '
'Friday for some of the areas best live musicians come and play. '
'No Cover. ", "eventDays": {"friday": {"start": "03:00:00.000", '
'"end": "06:00:00.000"}}, "eventTags": ["21 and Older", "Beer", '
'"Drinks", "Food", "Live Music"], "raves": 0, "rants": 0, "city": '
'"Norwalk", "state": "CT", "street": "93 North Main St", "zip": '
'"06854", "tags": [], "loc": [41.101869, -73.41975099999999], '
'"ctas": {"cta2": "", "cta1": ""}, "isFeatured": "", "videos": '
'[], "imagePrefix": '
'"images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/ff7d2132f7c74852a07f9f5b7ef5117a.jpg", '
'"imageBaseUrl": "https://res.cloudinary.com/gonation", '
'"imageurl": '
'"https://res.cloudinary.com/gonation/images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/ff7d2132f7c74852a07f9f5b7ef5117a.jpg"}, '
'{"_id": "evt-m_4MsRVfSHi3-nbSX3YwqA", "name": "Live Music every '
'Saturday 10pm to 1am", "created": "2026-01-13T03:48:58.647Z", '
'"starts": "2026-01-18T03:00:00.000Z", "ends": '
'"2026-06-27T05:00:00.000Z", "going": [], "profile_id": '
'"bzn-RqJqA9UhRLmoyE3R_fzYrg", "description": "Join us every '
'Saturday from 10pm to 1am for the areas best musicians. No '
'Cover. ", "eventDays": {"saturday": {"start": "03:00:00.000", '
'"end": "06:00:00.000"}}, "eventTags": ["21 and Older", "Beer", '
'"Food", "Drinks", "Live Music"], "raves": 0, "rants": 0, "city": '
'"Norwalk", "state": "CT", "street": "93 North Main St", "zip": '
'"06854", "tags": [], "loc": [41.101869, -73.41975099999999], '
'"ctas": {"cta2": "", "cta1": ""}, "isFeatured": "", "videos": '
'[], "imagePrefix": '
'"images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/bd212248a3214b5e804d370dcc77f197.jpg", '
'"imageBaseUrl": "https://res.cloudinary.com/gonation", '
'"imageurl": '
'"https://res.cloudinary.com/gonation/images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/bd212248a3214b5e804d370dcc77f197.jpg"}]</body></html>'}
2026-06-16 13:21:16 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): 144.91.120.141:80
2026-06-16 13:21:16 [urllib3.connectionpool] DEBUG: http://144.91.120.141:80 "POST /api/v1/raw-events/ HTTP/1.1" 400 55
2026-06-16 13:21:16 [o_neills] ERROR: API error 400: {"platform_hash":["Platform 'O'Neill's' is archived."]}
2026-06-16 13:21:16 [scrapy.core.scraper] DEBUG: Scraped from <200 https://data.prod.gonation.com/profile/recurringevents?profile_id=4f4d458ab111aa3e8e000082&_=1774514106134&callback=axiosJsonpCallback1>
{'event_url': 'https://www.oneillsono.com/events/evt-m_4MsRVfSHi3-nbSX3YwqA',
'platform': 'O neills',
'platform_hash': '72d8d63379d99cb23daf01b0d66c7804',
'raw_body': '<html><body>[{"_id": "evt-PXOyGu9CS2CgAfOUF-udHA", "name": '
'"Tuesday Trivia!!", "created": "2026-01-13T03:51:46.856Z", '
'"starts": "2026-01-14T00:30:00.000Z", "ends": '
'"2026-07-01T01:30:00.000Z", "going": [], "profile_id": '
'"bzn-RqJqA9UhRLmoyE3R_fzYrg", "description": "Family friendly '
'Trivia every Tuesday from 7.30pm to 9.30 pm. No Charge to play. '
'Half off all sliders. ", "eventDays": {"tuesday": {"start": '
'"00:30:00.000", "end": "02:30:00.000"}}, "eventTags": ["All '
'Ages"], "raves": 0, "rants": 0, "city": "Norwalk", "state": '
'"CT", "street": "93 North Main St", "zip": "06854", "tags": [], '
'"loc": [41.101869, -73.41975099999999], "ctas": {"cta2": "", '
'"cta1": ""}, "isFeatured": "", "videos": [], "imagePrefix": '
'"images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/9ad2e91a1bdf4a3e86d53a1626b460b4.jpg", '
'"imageBaseUrl": "https://res.cloudinary.com/gonation", '
'"imageurl": '
'"https://res.cloudinary.com/gonation/images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/9ad2e91a1bdf4a3e86d53a1626b460b4.jpg"}, '
'{"_id": "evt-eK17ENphTFOURlzekUdijQ", "name": "Live Music Every '
'Friday. 10pm-1am", "created": "2026-01-13T03:47:11.049Z", '
'"starts": "2026-01-17T03:00:00.000Z", "ends": '
'"2026-06-26T05:00:00.000Z", "going": [], "profile_id": '
'"bzn-RqJqA9UhRLmoyE3R_fzYrg", "description": "Join us every '
'Friday for some of the areas best live musicians come and play. '
'No Cover. ", "eventDays": {"friday": {"start": "03:00:00.000", '
'"end": "06:00:00.000"}}, "eventTags": ["21 and Older", "Beer", '
'"Drinks", "Food", "Live Music"], "raves": 0, "rants": 0, "city": '
'"Norwalk", "state": "CT", "street": "93 North Main St", "zip": '
'"06854", "tags": [], "loc": [41.101869, -73.41975099999999], '
'"ctas": {"cta2": "", "cta1": ""}, "isFeatured": "", "videos": '
'[], "imagePrefix": '
'"images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/ff7d2132f7c74852a07f9f5b7ef5117a.jpg", '
'"imageBaseUrl": "https://res.cloudinary.com/gonation", '
'"imageurl": '
'"https://res.cloudinary.com/gonation/images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/ff7d2132f7c74852a07f9f5b7ef5117a.jpg"}, '
'{"_id": "evt-m_4MsRVfSHi3-nbSX3YwqA", "name": "Live Music every '
'Saturday 10pm to 1am", "created": "2026-01-13T03:48:58.647Z", '
'"starts": "2026-01-18T03:00:00.000Z", "ends": '
'"2026-06-27T05:00:00.000Z", "going": [], "profile_id": '
'"bzn-RqJqA9UhRLmoyE3R_fzYrg", "description": "Join us every '
'Saturday from 10pm to 1am for the areas best musicians. No '
'Cover. ", "eventDays": {"saturday": {"start": "03:00:00.000", '
'"end": "06:00:00.000"}}, "eventTags": ["21 and Older", "Beer", '
'"Food", "Drinks", "Live Music"], "raves": 0, "rants": 0, "city": '
'"Norwalk", "state": "CT", "street": "93 North Main St", "zip": '
'"06854", "tags": [], "loc": [41.101869, -73.41975099999999], '
'"ctas": {"cta2": "", "cta1": ""}, "isFeatured": "", "videos": '
'[], "imagePrefix": '
'"images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/bd212248a3214b5e804d370dcc77f197.jpg", '
'"imageBaseUrl": "https://res.cloudinary.com/gonation", '
'"imageurl": '
'"https://res.cloudinary.com/gonation/images/event/bzn-RqJqA9UhRLmoyE3R_fzYrg/bd212248a3214b5e804d370dcc77f197.jpg"}]</body></html>'}
2026-06-16 13:21:16 [scrapy.core.engine] INFO: Closing spider (finished)
2026-06-16 13:21:16 [scrapy.extensions.feedexport] INFO: Stored csv feed (3 items) in: output/2026/06/16/o_neills.csv
2026-06-16 13:21:16 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 331,
'downloader/request_count': 1,
'downloader/request_method_count/GET': 1,
'downloader/response_bytes': 2997,
'downloader/response_count': 1,
'downloader/response_status_count/200': 1,
'elapsed_time_seconds': 1.303422,
'feedexport/success_count/FileFeedStorage': 1,
'finish_reason': 'finished',
'finish_time': datetime.datetime(2026, 6, 16, 11, 21, 16, 839914, tzinfo=datetime.timezone.utc),
'item_scraped_count': 3,
'items_per_minute': 180.0,
'log_count/DEBUG': 10,
'log_count/ERROR': 3,
'log_count/INFO': 3,
'log_count/WARNING': 1,
'memusage/max': 92938240,
'memusage/startup': 92938240,
'response_received_count': 1,
'responses_per_minute': 60.0,
'scheduler/dequeued': 1,
'scheduler/dequeued/memory': 1,
'scheduler/enqueued': 1,
'scheduler/enqueued/memory': 1,
'start_time': datetime.datetime(2026, 6, 16, 11, 21, 15, 536492, tzinfo=datetime.timezone.utc)}
2026-06-16 13:21:16 [scrapy.core.engine] INFO: Spider closed (finished)
PROJECT (event_scrapers)
SPIDER (o_neills)