Head
2026-08-11 13:40:17 [scrapy.utils.log] INFO: Scrapy 2.14.1 started (bot: event_scrapers)
2026-08-11 13:40:17 [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-11 13:40:17 [scrapy.crawler] DEBUG: Using AsyncCrawlerProcess
2026-08-11 13:40:17 [asyncio] DEBUG: Using selector: EpollSelector
2026-08-11 13:40:17 [scrapy.addons] INFO: Enabled addons:
[]
2026-08-11 13:40:17 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor
2026-08-11 13:40:17 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop
2026-08-11 13:40:17 [scrapy.extensions.telnet] INFO: Telnet Password: 719b14252a2cb972
2026-08-11 13:40:17 [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-11 13:40:17 [scrapy.crawler] INFO: Overridden settings:
{'BOT_NAME': 'event_scrapers',
'FEED_EXPORT_ENCODING': 'utf-8',
'FEED_URI_PARAMS': <function _feed_uri_params at 0x761326d174c0>,
'LOG_FILE': '/root/event-list-scraping/logs/event_scrapers/brass_and_bonect/6ab9de2f957911f189c00050565fa5d9.log',
'NEWSPIDER_MODULE': 'event_scrapers.spiders',
'REQUEST_FINGERPRINTER_CLASS': 'scrapy_zyte_api.ScrapyZyteAPIRequestFingerprinter',
'SPIDER_MODULES': ['event_scrapers.spiders']}
2026-08-11 13:40:17 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
2026-08-11 13:40:17 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
2026-08-11 13:40:17 [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-11 13:40:17 [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-11 13:40:17 [scrapy.middleware] INFO: Enabled item pipelines:
['event_scrapers.pipelines.EventScrapersPipeline']
2026-08-11 13:40:17 [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-11 13:40:17 [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-11 13:40:17 [scrapy.core.engine] INFO: Spider opened
2026-08-11 13:40:17 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.brass_and_bonect.BrassAndBonectSpider 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-11 13:40:17 [brass_and_bonect] INFO: Sending scraped events to prod API
2026-08-11 13:40:17 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2026-08-11 13:40:17 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
2026-08-11 13:40:17 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
2026-08-11 13:40:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://brassandbonect.com/events/> (referer: None) ['zyte-api']
2026-08-11 13:40:18 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-11 13:40:19 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 1197
2026-08-11 13:40:19 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
{'event_url': 'https://brassandbonect.com/events/#openmicnight_tuesday08/18',
'platform_hash': 'e13843b4b7e09a32288d3baf2c458376',
'raw_body': '<div class="content-grid__item event" data-id="2" '
'data-start-time="8PM" data-date="2026-08-18" data-title="Open '
'Mic Night at Brass & Bone"><div class="event-image"><img '
'loading="lazy" decoding="async" alt="Open Mic Night" width="4" '
'height="5" src="/images/posters/open-mic-night/small.webp" '
'srcset="/images/posters/open-mic-night/small.webp, '
'/images/posters/open-mic-night/medium.webp 2x"></div><p '
'class="event-datetime"><span class="-capitalize">tuesday '
'08/18</span> 8PM</p><p class="event-title">Open Mic '
'Night</p><div class="event-description">Come on down and '
'showcase your talents! With a full backline of gear available, '
"it's all set up to just plug in and play. If you're not one to "
'jump up on stage, come check out some amazing local talent while '
'you take advantage of some great food and drink '
'specials!</div></div>'}
2026-08-11 13:40:19 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-11 13:40:19 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 1145
2026-08-11 13:40:19 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
{'event_url': 'https://brassandbonect.com/events/#karaoke_wednesday08/12',
'platform_hash': 'e13843b4b7e09a32288d3baf2c458376',
Tail
'County, to being the lead singer of various bands, Zully has '
'trained her voice to cross genres.</div><div '
'class="event-links"><a class="social-link" '
'href="https://www.youtube.com/@ZullyRamosMusic" target="_blank" '
'aria-label="View youtube profile for Zully Ramos and the '
'OGs"><img src="/images/social/youtube/1x.webp" , '
'srcset="/images/social/youtube/1x.webp, '
'/images/social/youtube/2x.webp 2x, '
'/images/social/youtube/3x.webp 3x" alt="youtube logo" width="40" '
'height="40" loading="lazy" decoding="async"> </a><a '
'class="social-link" '
'href="https://www.facebook.com/ZullyRamosMusic" target="_blank" '
'aria-label="View facebook profile for Zully Ramos and the '
'OGs"><img src="/images/social/facebook/1x.webp" , '
'srcset="/images/social/facebook/1x.webp, '
'/images/social/facebook/2x.webp 2x, '
'/images/social/facebook/3x.webp 3x" alt="facebook logo" '
'width="40" height="40" loading="lazy" decoding="async"> </a><a '
'class="social-link" href="https://www.instagram.com/zrandtheogs" '
'target="_blank" aria-label="View instagram profile for Zully '
'Ramos and the OGs"><img src="/images/social/instagram/1x.webp" , '
'srcset="/images/social/instagram/1x.webp, '
'/images/social/instagram/2x.webp 2x, '
'/images/social/instagram/3x.webp 3x" alt="instagram logo" '
'width="40" height="40" loading="lazy" '
'decoding="async"></a></div></div>'}
2026-08-11 13:40:19 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-11 13:40:19 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 998
2026-08-11 13:40:19 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
{'event_url': 'https://brassandbonect.com/events/#mikecusa_thursday08/20',
'platform_hash': 'e13843b4b7e09a32288d3baf2c458376',
'raw_body': '<div class="content-grid__item event" data-id="130" '
'data-start-time="5PM" data-date="2026-08-20" data-title="Mike '
'Cusa at Brass & Bone"><div class="event-image"><img '
'loading="lazy" decoding="async" alt="Mike Cusa" width="328" '
'height="410" src="/images/posters/130/small.webp" '
'srcset="/images/posters/130/small.webp, '
'/images/posters/130/medium.webp 2x"></div><p '
'class="event-datetime"><span class="-capitalize">thursday '
'08/20</span> 5PM</p><p class="event-title">Mike Cusa</p><div '
'class="event-description">Join Mike Cusa in the Piano corner for '
'a dinner service of classics and more!</div><div '
'class="event-links"></div></div>'}
2026-08-11 13:40:19 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-11 13:40:20 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 3812
2026-08-11 13:40:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
{'event_url': 'https://brassandbonect.com/events/#peak_friday08/21',
'platform_hash': 'e13843b4b7e09a32288d3baf2c458376',
'raw_body': '<div class="content-grid__item event" data-id="114" '
'data-start-time="930PM" data-date="2026-08-21" data-title="PEAK '
'at Brass & Bone"><div class="event-image"><img '
'loading="lazy" decoding="async" alt="PEAK" width="328" '
'height="410" src="/images/posters/114/small.webp" '
'srcset="/images/posters/114/small.webp, '
'/images/posters/114/medium.webp 2x"></div><p '
'class="event-datetime"><span class="-capitalize">friday '
'08/21</span> 930PM</p><p class="event-title">PEAK</p><div '
'class="event-description">PEAK is a Brooklyn-based Quartet led '
'by guitarist Jeremy Hilliard, a versatile singer–songwriter, '
'that has been performing in its current incarnation since 2019. '
"PEAK's original music, characterized as psychedelic indie funk, "
'draws from influences ranging from Talking Heads, Phish, and the '
"Grateful Dead to Tom Petty and Bright Eyes.<br><br>The band's "
'three albums, “Electric Bouquet,” “Choppy Water,” and “Vanishing '
"Skies” highlight PEAK's versatile talents within a range that "
'veers from guitar-driven rock to Americana and melodic indie '
"tunes.<br><br>Hilliard's musicianship and lyric narrative style "
'mesh seamlessly with the talents of keyboard master Johnny '
'Young. Friends for many years, the two started writing songs '
'together as the band began to take shape. Blind since age 17, '
'Young has been blessed with a soulful voice and musical talents '
'that help PEAK paint richly detailed, ever-changing visions of '
'color and sound on the stage.<br><br>Drummer Kito Bovenschulte '
'and bassist Josh T. Carter provide the flawless beat that moves '
'the music of PEAK through a playlist including a distinctive mix '
'of searing blues rock, high-energy electro funk and moody indie '
'originals.<br><br>The band has shared the stage with acts such '
'as Goose, Eggy, Dizgo, Lespecial, Neighbor, Mihali, Kendal '
'Street Company, The Magic Beans, Space Bacon, and many '
'more.</div><div class="event-links"><a class="social-link" '
'href="https://www.peaktheband.com/" target="_blank" '
'aria-label="View website for PEAK"><img '
'src="/images/social/website/1x.webp" , '
'srcset="/images/social/website/1x.webp, '
'/images/social/website/2x.webp 2x, '
'/images/social/website/3x.webp 3x" alt="website logo" width="40" '
'height="40" loading="lazy" decoding="async"> </a><a '
'class="social-link" '
'href="https://open.spotify.com/artist/3Irtra1o5fL2pJMPPtXHxd" '
'target="_blank" aria-label="View spotify profile for PEAK"><img '
'src="/images/social/spotify/1x.webp" , '
'srcset="/images/social/spotify/1x.webp, '
'/images/social/spotify/2x.webp 2x, '
'/images/social/spotify/3x.webp 3x" alt="spotify logo" width="40" '
'height="40" loading="lazy" decoding="async"> </a><a '
'class="social-link" href="https://www.facebook.com/PEAKbandNYC" '
'target="_blank" aria-label="View facebook profile for PEAK"><img '
'src="/images/social/facebook/1x.webp" , '
'srcset="/images/social/facebook/1x.webp, '
'/images/social/facebook/2x.webp 2x, '
'/images/social/facebook/3x.webp 3x" alt="facebook logo" '
'width="40" height="40" loading="lazy" decoding="async"> </a><a '
'class="social-link" href="https://www.instagram.com/peaktheband" '
'target="_blank" aria-label="View instagram profile for '
'PEAK"><img src="/images/social/instagram/1x.webp" , '
'srcset="/images/social/instagram/1x.webp, '
'/images/social/instagram/2x.webp 2x, '
'/images/social/instagram/3x.webp 3x" alt="instagram logo" '
'width="40" height="40" loading="lazy" '
'decoding="async"></a></div></div>'}
2026-08-11 13:40:20 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-11 13:40:20 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 2548
2026-08-11 13:40:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
{'event_url': 'https://brassandbonect.com/events/#midnightcardinal_saturday08/22',
'platform_hash': 'e13843b4b7e09a32288d3baf2c458376',
'raw_body': '<div class="content-grid__item event" data-id="124" '
'data-start-time="930PM" data-date="2026-08-22" '
'data-title="Midnight Cardinal at Brass & Bone"><div '
'class="event-image"><img loading="lazy" decoding="async" '
'alt="Midnight Cardinal" width="328" height="410" '
'src="/images/posters/124/small.webp" '
'srcset="/images/posters/124/small.webp, '
'/images/posters/124/medium.webp 2x"></div><p '
'class="event-datetime"><span class="-capitalize">saturday '
'08/22</span> 930PM</p><p class="event-title">Midnight '
'Cardinal</p><div class="event-description">Based in Westport, '
'Connecticut, Midnight Cardinal isn’t your average cover band. '
'Known for turning classic hits and unexpected album cuts into '
'full-room experiences, their genre-bending setlists span '
'alt-pop, rock, soul, R&B, disco, and indie favorites. Every '
'show is high-energy, musically tight, and built for '
'connection.<br><br>*It’s midnight. Start dreaming.*</div><div '
'class="event-links"><a class="social-link" '
'href="https://www.midnightcardinal.com/" target="_blank" '
'aria-label="View website for Midnight Cardinal"><img '
'src="/images/social/website/1x.webp" , '
'srcset="/images/social/website/1x.webp, '
'/images/social/website/2x.webp 2x, '
'/images/social/website/3x.webp 3x" alt="website logo" width="40" '
'height="40" loading="lazy" decoding="async"> </a><a '
'class="social-link" '
'href="https://www.facebook.com/Midnight-Cardinal-61570073564175" '
'target="_blank" aria-label="View facebook profile for Midnight '
'Cardinal"><img src="/images/social/facebook/1x.webp" , '
'srcset="/images/social/facebook/1x.webp, '
'/images/social/facebook/2x.webp 2x, '
'/images/social/facebook/3x.webp 3x" alt="facebook logo" '
'width="40" height="40" loading="lazy" decoding="async"> </a><a '
'class="social-link" '
'href="https://www.instagram.com/midnightcardinalmusic" '
'target="_blank" aria-label="View instagram profile for Midnight '
'Cardinal"><img src="/images/social/instagram/1x.webp" , '
'srcset="/images/social/instagram/1x.webp, '
'/images/social/instagram/2x.webp 2x, '
'/images/social/instagram/3x.webp 3x" alt="instagram logo" '
'width="40" height="40" loading="lazy" '
'decoding="async"></a></div></div>'}
2026-08-11 13:40:20 [scrapy.core.engine] INFO: Closing spider (finished)
2026-08-11 13:40:20 [scrapy.extensions.feedexport] INFO: Stored csv feed (11 items) in: output/2026/08/11/brass_and_bonect.csv
2026-08-11 13:40:20 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 230,
'downloader/request_count': 1,
'downloader/request_method_count/GET': 1,
'downloader/response_bytes': 39957,
'downloader/response_count': 1,
'downloader/response_status_count/200': 1,
'elapsed_time_seconds': 2.223735,
'feedexport/success_count/FileFeedStorage': 1,
'finish_reason': 'finished',
'finish_time': datetime.datetime(2026, 8, 11, 11, 40, 20, 162794, tzinfo=datetime.timezone.utc),
'item_scraped_count': 11,
'items_per_minute': 330.0,
'log_count/DEBUG': 35,
'log_count/ERROR': 1,
'log_count/INFO': 3,
'memusage/max': 99934208,
'memusage/startup': 99934208,
'response_received_count': 1,
'responses_per_minute': 30.0,
'scheduler/dequeued': 1,
'scheduler/dequeued/memory': 1,
'scheduler/enqueued': 1,
'scheduler/enqueued/memory': 1,
'scrapy-zyte-api/429': 0,
'scrapy-zyte-api/attempts': 1,
'scrapy-zyte-api/error_ratio': 0.0,
'scrapy-zyte-api/errors': 0,
'scrapy-zyte-api/fatal_errors': 0,
'scrapy-zyte-api/mean_connection_seconds': 0.8712363205850124,
'scrapy-zyte-api/mean_response_seconds': 0.9075823165476322,
'scrapy-zyte-api/processed': 1,
'scrapy-zyte-api/request_args/httpResponseBody': 1,
'scrapy-zyte-api/request_args/httpResponseHeaders': 1,
'scrapy-zyte-api/request_args/url': 1,
'scrapy-zyte-api/status_codes/200': 1,
'scrapy-zyte-api/success': 1,
'scrapy-zyte-api/success_ratio': 1.0,
'scrapy-zyte-api/throttle_ratio': 0.0,
'start_time': datetime.datetime(2026, 8, 11, 11, 40, 17, 939059, tzinfo=datetime.timezone.utc)}
2026-08-11 13:40:20 [scrapy.core.engine] INFO: Spider closed (finished)