Head
2026-08-04 20:41:08 [scrapy.utils.log] INFO: Scrapy 2.14.1 started (bot: event_scrapers)
2026-08-04 20:41:08 [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, Jun 19 2026, 12:46:00) [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-08-04 20:41:08 [scrapy.crawler] DEBUG: Using AsyncCrawlerProcess
2026-08-04 20:41:08 [asyncio] DEBUG: Using selector: EpollSelector
2026-08-04 20:41:08 [scrapy.addons] INFO: Enabled addons:
[]
2026-08-04 20:41:08 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor
2026-08-04 20:41:08 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop
2026-08-04 20:41:08 [scrapy.extensions.telnet] INFO: Telnet Password: 4fe26d781176aa47
2026-08-04 20:41:08 [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-08-04 20:41:08 [scrapy.crawler] INFO: Overridden settings:
{'BOT_NAME': 'event_scrapers',
'FEED_EXPORT_ENCODING': 'utf-8',
'FEED_URI_PARAMS': <function _feed_uri_params at 0x761b37d0f380>,
'LOG_FILE': '/root/event-list-scraping/logs/event_scrapers/moca_west/0a978243903411f1a3b20050565fa5d9.log',
'NEWSPIDER_MODULE': 'event_scrapers.spiders',
'REQUEST_FINGERPRINTER_CLASS': 'scrapy_zyte_api.ScrapyZyteAPIRequestFingerprinter',
'SPIDER_MODULES': ['event_scrapers.spiders']}
2026-08-04 20:41:08 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
2026-08-04 20:41:08 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
2026-08-04 20:41:08 [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-08-04 20:41:08 [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-08-04 20:41:08 [scrapy.middleware] INFO: Enabled item pipelines:
['event_scrapers.pipelines.EventScrapersPipeline']
2026-08-04 20:41:08 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/pipelines/__init__.py:41: ScrapyDeprecationWarning: EventScrapersPipeline.open_spider() 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.open_spider)
2026-08-04 20:41:08 [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-08-04 20:41:08 [scrapy.core.engine] INFO: Spider opened
2026-08-04 20:41:08 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.moca_west_port.MocaWestSpider 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-08-04 20:41:08 [moca_west] INFO: Sending scraped events to prod API
2026-08-04 20:41:08 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2026-08-04 20:41:08 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
2026-08-04 20:41:08 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): mocact.org:443
2026-08-04 20:41:09 [urllib3.connectionpool] DEBUG: https://mocact.org:443 "GET /events/ HTTP/1.1" 200 None
2026-08-04 20:41:09 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:09 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:09 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:09 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:09 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://mocact.org/wp-json/tribe/views/v2/html?pu=%2Fnew-events%2Fmonth%2F2026-08%2F%3Fshortcode%3Df0b1cb7d&u=%2Fnew-events%2Flist%2F%3Fshortcode%3Df0b1cb7d%26tribe-bar-date%3D2026-11-15&smu=false&tvn1=163d6c30d0&tvn2=> (referer: https://mocact.org/) ['zyte-api']
2026-08-04 20:41:11 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://mocact.org/wp-json/tribe/views/v2/html?pu=%2Fnew-events%2Fmonth%2F2026-08%2F%3Fshortcode%3Df0b1cb7d&u=%2Fnew-events%2Flist%2F%3Fshortcode%3Df0b1cb7d%26tribe-bar-date%3D2026-10-15&smu=false&tvn1=163d6c30d0&tvn2=> (referer: https://mocact.org/) ['zyte-api']
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [scrapy.dupefilters] DEBUG: Filtered duplicate request: <GET https://mocact.org/events-calendar/mocact-presents-dee-dee-bridgewater-bill-charlap/> - no more duplicates will be shown (see DUPEFILTER_DEBUG to show all duplicates)
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://mocact.org/wp-json/tribe/views/v2/html?pu=%2Fnew-events%2Fmonth%2F2026-08%2F%3Fshortcode%3Df0b1cb7d&u=%2Fnew-events%2Flist%2F%3Fshortcode%3Df0b1cb7d%26tribe-bar-date%3D2026-8-15&smu=false&tvn1=163d6c30d0&tvn2=> (referer: https://mocact.org/) ['zyte-api']
2026-08-04 20:41:11 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://mocact.org/wp-json/tribe/views/v2/html?pu=%2Fnew-events%2Fmonth%2F2026-08%2F%3Fshortcode%3Df0b1cb7d&u=%2Fnew-events%2Flist%2F%3Fshortcode%3Df0b1cb7d%26tribe-bar-date%3D2026-12-15&smu=false&tvn1=163d6c30d0&tvn2=> (referer: https://mocact.org/) ['zyte-api']
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-04 20:41:11 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
Tail
'tribe-events-c-subscribe-dropdown__list-item--outlook-365">\n'
'<a class="tribe-events-c-subscribe-dropdown__list-item-link" '
'href="https://outlook.office.com/owa/?path=/calendar/action/compose&rrv=addevent&startdt=2026-09-10T18%3A00%3A00-04%3A00&enddt=2026-09-10T20%3A00%3A00-04%3A00&location=MoCACT,%2019%20Newtown%20Turnpike,%20Westport,%2006880,%20United%20States&subject=Looking%20for%20History%20%E2%80%94%20Michael%20Borders%20Reception&body=LOOKING%20FOR%20HISTORYRick%20Shaefer%3A%C2%A0Colossi%20%E2%80%94%20On%20view%20June%2025%20%E2%80%93%20November%2015%2C%202026Michael%20Borders%3A%C2%A0Connecticut%20Industry%C2%A0%E2%80%94%20On%20view%20August%2013%20%E2%80%93%20November%2015%2C%202026Opening%20Reception%3A%C2%A0%28Michael%20Borders%3A%20Connecticut%20Industry%29%3A%20Thursday%20September%2010%2C%202026%20from%206%E2%80%938pm%C2%A0%20RESERVEMoCA%5CCT%20presents%C2%A0Looking%20for%20History%C2%A0featuring%20three%20artists%2C%20Rick%20Shaefer%2C%20Ellen%20Harvey%2C%20and%20Michael%20Borders%E2%80%94each%20presented%20in%20their%20own%20dedicated%20gallery%20space%20at%20varying%20intervals%20over%20the%20course%20of%20the%20exhibition%20from%20June%2025%20to%20November%2015%2C%202026.%20In%20recognition%20of%20the%20United%20States%E2%80%99%20250th%20anniversary%20in%202026%2C%20the%20Museum%20invites%20visitors%20into%20distinct%20yet%20interconnected%20conversations%20about%20our%20nation%E2%80%99s%20past%2C%20present%2C%20and%20potential%20future." '
'rel="noopener noreferrer nofollow noindex" target="_blank">\n'
'\t\tOutlook 365\t</a>\n'
'</li>\n'
'<li class="tribe-events-c-subscribe-dropdown__list-item '
'tribe-events-c-subscribe-dropdown__list-item--outlook-live">\n'
'<a class="tribe-events-c-subscribe-dropdown__list-item-link" '
'href="https://outlook.live.com/owa/?path=/calendar/action/compose&rrv=addevent&startdt=2026-09-10T18%3A00%3A00-04%3A00&enddt=2026-09-10T20%3A00%3A00-04%3A00&location=MoCACT,%2019%20Newtown%20Turnpike,%20Westport,%2006880,%20United%20States&subject=Looking%20for%20History%20%E2%80%94%20Michael%20Borders%20Reception&body=LOOKING%20FOR%20HISTORYRick%20Shaefer%3A%C2%A0Colossi%20%E2%80%94%20On%20view%20June%2025%20%E2%80%93%20November%2015%2C%202026Michael%20Borders%3A%C2%A0Connecticut%20Industry%C2%A0%E2%80%94%20On%20view%20August%2013%20%E2%80%93%20November%2015%2C%202026Opening%20Reception%3A%C2%A0%28Michael%20Borders%3A%20Connecticut%20Industry%29%3A%20Thursday%20September%2010%2C%202026%20from%206%E2%80%938pm%C2%A0%20RESERVEMoCA%5CCT%20presents%C2%A0Looking%20for%20History%C2%A0featuring%20three%20artists%2C%20Rick%20Shaefer%2C%20Ellen%20Harvey%2C%20and%20Michael%20Borders%E2%80%94each%20presented%20in%20their%20own%20dedicated%20gallery%20space%20at%20varying%20intervals%20over%20the%20course%20of%20the%20exhibition%20from%20June%2025%20to%20November%2015%2C%202026.%20In%20recognition%20of%20the%20United%20States%E2%80%99%20250th%20anniversary%20in%202026%2C%20the%20Museum%20invites%20visitors%20into%20distinct%20yet%20interconnected%20conversations%20about%20our%20nation%E2%80%99s%20past%2C%20present%2C%20and%20potential%20future." '
'rel="noopener noreferrer nofollow noindex" target="_blank">\n'
'\t\tOutlook Live\t</a>\n'
'</li>\n'
'</ul>\n'
'</div>\n'
'</div>\n'
'</div>\n'
'</div>\n'
'<!-- Event meta -->\n'
'<div class="tribe-events-single-section tribe-events-event-meta '
'primary tribe-clearfix">\n'
'<div class="tribe-events-meta-group '
'tribe-events-meta-group-details">\n'
'<h2 class="tribe-events-single-section-title"> Details </h2>\n'
'<ul class="tribe-events-meta-list">\n'
'<li class="tribe-events-meta-item">\n'
'<span class="tribe-events-start-date-label '
'tribe-events-meta-label">Date:</span>\n'
'<span class="tribe-events-meta-value">\n'
'<abbr class="tribe-events-abbr tribe-events-start-date published '
'dtstart" title="2026-09-10"> September 10 </abbr>\n'
'</span>\n'
'</li>\n'
'<li class="tribe-events-meta-item">\n'
'<span class="tribe-events-start-time-label '
'tribe-events-meta-label">Time:</span>\n'
'<span class="tribe-events-meta-value">\n'
'<div class="tribe-events-abbr tribe-events-start-time published '
'dtstart" title="2026-09-10">\n'
'\t\t\t\t\t\t6:00 pm - 8:00 pm\t\t\t\t\t\t\t\t\t\t\t</div>\n'
'</span>\n'
'</li>\n'
'<li class="tribe-events-meta-item"><span '
'class="tribe-events-event-categories-label '
'tribe-events-meta-label">Event Category:</span> <span '
'class="tribe-events-event-categories tribe-events-meta-value"><a '
'href="https://mocact.org/new-events/category/exhibition/" '
'rel="tag">Exhibition</a></span></li>\n'
'</ul>\n'
'</div>\n'
'<div class="tribe-events-meta-group '
'tribe-events-meta-group-venue">\n'
'<h2 class="tribe-events-single-section-title"> Venue </h2>\n'
'<ul class="tribe-events-meta-list">\n'
'<li class="tribe-events-meta-item tribe-venue"> <a '
'href="https://mocact.org/venue/moca-ct/">MoCA\\CT</a> </li>\n'
'<li class="tribe-events-meta-item tribe-venue-location">\n'
'<address class="tribe-events-address">\n'
'<span class="tribe-address">\n'
'<span class="tribe-street-address">19 Newtown Turnpike</span>\n'
'<br/>\n'
'<span class="tribe-locality">Westport</span><span '
'class="tribe-delimiter">,</span>\n'
'<span class="tribe-postal-code">06880</span>\n'
'<span class="tribe-country-name">United States</span>\n'
'</span>\n'
'<a class="tribe-events-gmap" '
'href="https://maps.google.com/maps?f=q&source=s_q&hl=en&geocode=&q=19+Newtown+Turnpike+Westport+06880+United+States" '
'rel="noreferrer noopener" target="_blank" title="Click to view a '
'Google Map">+ Google Map</a> </address>\n'
'</li>\n'
'<li class="tribe-events-meta-item">\n'
'<span class="tribe-venue-tel-label '
'tribe-events-meta-label">Phone</span>\n'
'<span class="tribe-venue-tel tribe-events-meta-value"> '
'203-222-7070 </span>\n'
'</li>\n'
'<li class="tribe-events-meta-item">\n'
'<span class="tribe-venue-url tribe-events-meta-value"> <a '
'href="https://mocact.org/" rel="external" target="_self">View '
'Venue Website</a> </span>\n'
'</li>\n'
'</ul>\n'
'</div>\n'
'<div class="tribe-events-meta-group '
'tribe-events-meta-group-gmap">\n'
'<div class="tribe-events-venue-map">\n'
'<iframe allowfullscreen="" aria-label="Venue location map" '
'frameborder="0" height="350px" '
'src="https://www.google.com/maps/embed/v1/place?key=AIzaSyDNsicAsP6-VuGtAb1O9riI3oc_NOb7IOU&q=19+Newtown+Turnpike+Westport+06880+United+States+&zoom=10" '
'style="border:0" title="Google maps iframe displaying the '
'address to MoCA\\CT" width="100%">\n'
'</iframe>\n'
'</div>\n'
'</div>\n'
'</div>\n'
'</div> <!-- #post-x -->\n'
'<!-- Event footer -->\n'
'<div id="tribe-events-footer">\n'
'<!-- Navigation -->\n'
'<nav aria-label="Event Navigation" '
'class="tribe-events-nav-pagination">\n'
'<ul class="tribe-events-sub-nav">\n'
'<li class="tribe-events-nav-previous"><a '
'href="https://mocact.org/events-calendar/advanced-art-studio-for-adults-with-disabilities-06-06-2026/2026-08-29/"><span>«</span> '
'Advanced Art Studio for Adults with Disabilities</a></li>\n'
'<li class="tribe-events-nav-next"><a '
'href="https://mocact.org/events-calendar/encaustic-collage-with-leslie-giuliani/">Encaustic '
'Collage with Leslie Giuliani <span>»</span></a></li>\n'
'</ul>\n'
'<!-- .tribe-events-sub-nav -->\n'
'</nav>\n'
'</div>\n'
'<!-- #tribe-events-footer -->\n'
'</div><!-- #tribe-events-content -->\n'
'<div class="tribe-events-after-html"></div>\n'
'<!--\n'
'This calendar is powered by The Events Calendar.\n'
'http://evnt.is/18wn\n'
'-->\n'
'</section></body></html>'}
2026-08-04 20:41:24 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://mocact.org/events-calendar/mocact-presents-time-for-three/> (referer: None) ['zyte-api']
2026-08-04 20:41:24 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-04 20:41:24 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 400 47
2026-08-04 20:41:24 [moca_west] ERROR: API error 400: {"event_body":["This field may not be blank."]}
2026-08-04 20:41:24 [scrapy.core.scraper] DEBUG: Scraped from <200 https://mocact.org/moca-presents-time-for-three/>
{'event_url': 'https://mocact.org/moca-presents-time-for-three/',
'platform_hash': 'de28e5de831ef6d60018b39319829943',
'raw_body': ''}
2026-08-04 20:41:25 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://mocact.org/events-calendar/mocact-presents-calidore-string-quartet/> (referer: None) ['zyte-api']
2026-08-04 20:41:25 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-04 20:41:25 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 400 47
2026-08-04 20:41:25 [moca_west] ERROR: API error 400: {"event_body":["This field may not be blank."]}
2026-08-04 20:41:25 [scrapy.core.scraper] DEBUG: Scraped from <200 https://mocact.org/moca-presents-calidore-string-quartet/>
{'event_url': 'https://mocact.org/moca-presents-calidore-string-quartet/',
'platform_hash': 'de28e5de831ef6d60018b39319829943',
'raw_body': ''}
2026-08-04 20:41:26 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://mocact.org/events-calendar/mocact-presents-morgan-james/> (referer: None) ['zyte-api']
2026-08-04 20:41:26 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-04 20:41:26 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 400 47
2026-08-04 20:41:26 [moca_west] ERROR: API error 400: {"event_body":["This field may not be blank."]}
2026-08-04 20:41:26 [scrapy.core.scraper] DEBUG: Scraped from <200 https://mocact.org/morgan-james-soul-remains-tour/>
{'event_url': 'https://mocact.org/morgan-james-soul-remains-tour/',
'platform_hash': 'de28e5de831ef6d60018b39319829943',
'raw_body': ''}
2026-08-04 20:41:37 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://mocact.org/events-calendar/mocact-presents-dee-dee-bridgewater-bill-charlap/> (referer: None) ['zyte-api']
2026-08-04 20:41:37 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-04 20:41:37 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 400 47
2026-08-04 20:41:37 [moca_west] ERROR: API error 400: {"event_body":["This field may not be blank."]}
2026-08-04 20:41:37 [scrapy.core.scraper] DEBUG: Scraped from <200 https://mocact.org/moca-presents-dee-dee-bridgewater-bill-charlap/>
{'event_url': 'https://mocact.org/moca-presents-dee-dee-bridgewater-bill-charlap/',
'platform_hash': 'de28e5de831ef6d60018b39319829943',
'raw_body': ''}
2026-08-04 20:41:37 [scrapy.core.engine] INFO: Closing spider (finished)
2026-08-04 20:41:37 [scrapy.extensions.feedexport] INFO: Stored csv feed (20 items) in: output/2026/08/04/moca_west.csv
2026-08-04 20:41:37 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 10009,
'downloader/request_count': 25,
'downloader/request_method_count/GET': 25,
'downloader/response_bytes': 4120485,
'downloader/response_count': 25,
'downloader/response_status_count/200': 25,
'dupefilter/filtered': 19,
'elapsed_time_seconds': 28.995156,
'feedexport/success_count/FileFeedStorage': 1,
'finish_reason': 'finished',
'finish_time': datetime.datetime(2026, 8, 4, 18, 41, 37, 335662, tzinfo=datetime.timezone.utc),
'item_scraped_count': 20,
'items_per_minute': 42.857142857142854,
'log_count/DEBUG': 113,
'log_count/ERROR': 19,
'log_count/INFO': 3,
'log_count/WARNING': 1,
'memusage/max': 99897344,
'memusage/startup': 99897344,
'request_depth_max': 1,
'response_received_count': 25,
'responses_per_minute': 53.57142857142857,
'scheduler/dequeued': 25,
'scheduler/dequeued/memory': 25,
'scheduler/enqueued': 25,
'scheduler/enqueued/memory': 25,
'scrapy-zyte-api/429': 0,
'scrapy-zyte-api/attempts': 25,
'scrapy-zyte-api/error_ratio': 0.0,
'scrapy-zyte-api/errors': 0,
'scrapy-zyte-api/fatal_errors': 0,
'scrapy-zyte-api/mean_connection_seconds': 4.698794196099042,
'scrapy-zyte-api/mean_response_seconds': 4.961262983083726,
'scrapy-zyte-api/processed': 25,
'scrapy-zyte-api/request_args/customHttpRequestHeaders': 5,
'scrapy-zyte-api/request_args/httpResponseBody': 25,
'scrapy-zyte-api/request_args/httpResponseHeaders': 25,
'scrapy-zyte-api/request_args/url': 25,
'scrapy-zyte-api/status_codes/200': 25,
'scrapy-zyte-api/success': 25,
'scrapy-zyte-api/success_ratio': 1.0,
'scrapy-zyte-api/throttle_ratio': 0.0,
'start_time': datetime.datetime(2026, 8, 4, 18, 41, 8, 340506, tzinfo=datetime.timezone.utc)}
2026-08-04 20:41:37 [scrapy.core.engine] INFO: Spider closed (finished)