- Analysis
- Categories
- Logs
- Crawler.stats
-
project event_scrapers spider brass_bonect job 367a3bfe957c11f1b2f90050565fa5d9 first_log_time 2026-08-11 14:00:17 latest_log_time 2026-08-11 14:00:20 runtime 0:00:03 crawled_pages 1 scraped_items 11 shutdown_reason N/A finish_reason finished log_critical_count 0 log_error_count 3 log_warning_count 1 log_redirect_count 0 log_retry_count 0 log_ignore_count 0 latest_crawl latest_scrape latest_log current_time latest_item {'event_url': 'https://brassandbonect.com/events/#midnight_cardinal_at_brass_&_bone_saturday_08_22_2026', 'platform_hash': 'e13843b4b7e09a32288d3baf2c458376', 'raw_body': '<html><body><div class="content-grid__item event" ' 'data-date="2026-08-22" data-id="124" data-start-time="930PM" ' 'data-title="Midnight Cardinal at Brass & Bone"><div ' 'class="event-image"><img alt="Midnight Cardinal" ' 'decoding="async" height="410" loading="lazy" ' 'src="/images/posters/124/small.webp" ' 'srcset="/images/posters/124/small.webp, ' '/images/posters/124/medium.webp 2x" width="328"/></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 aria-label="View website for Midnight ' 'Cardinal" class="social-link" ' 'href="https://www.midnightcardinal.com/" target="_blank"><img ' ',="" alt="website logo" decoding="async" height="40" ' 'loading="lazy" src="/images/social/website/1x.webp" ' 'srcset="/images/social/website/1x.webp, ' '/images/social/website/2x.webp 2x, ' '/images/social/website/3x.webp 3x" width="40"/> </a><a ' 'aria-label="View facebook profile for Midnight Cardinal" ' 'class="social-link" ' 'href="https://www.facebook.com/Midnight-Cardinal-61570073564175" ' 'target="_blank"><img ,="" alt="facebook logo" decoding="async" ' 'height="40" loading="lazy" src="/images/social/facebook/1x.webp" ' 'srcset="/images/social/facebook/1x.webp, ' '/images/social/facebook/2x.webp 2x, ' '/images/social/facebook/3x.webp 3x" width="40"/> </a><a ' 'aria-label="View instagram profile for Midnight Cardinal" ' 'class="social-link" ' 'href="https://www.instagram.com/midnightcardinalmusic" ' 'target="_blank"><img ,="" alt="instagram logo" decoding="async" ' 'height="40" loading="lazy" ' 'src="/images/social/instagram/1x.webp" ' 'srcset="/images/social/instagram/1x.webp, ' '/images/social/instagram/2x.webp 2x, ' '/images/social/instagram/3x.webp 3x" ' 'width="40"/></a></div></div></body></html>'} -
-
error_logs3 in total
2026-08-11 14:00:19 [brass_bonect] ERROR: API error 500: <!doctype html> <html lang="en"> <head> <title>Server Error (500)</title> </head> <body> <h1>Server Error (500)</h1><p></p> </body> </html>
2026-08-11 14:00:19 [brass_bonect] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}2026-08-11 14:00:20 [brass_bonect] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]} -
warning_logs1 in total
2026-08-11 14:00:18 [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 14:00:18 [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 14:00:18 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.brass_bonect.BrassBonectSpider 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 14:00:18 [py.warnings] WARNING: /root/event-list-scraping/event_scrapers/spiders/brass_bonect.py:25: 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 25 of the file /root/event-list-scraping/event_scrapers/spiders/brass_bonect.py. To get rid of this warning, pass the additional argument 'features="lxml"' to the BeautifulSoup constructor. item['raw_body'] = str(bs(event.get()))
WARNING+
INFO
-
scrapy_version
2.14.1
-
telnet_console
127.0.0.1:6023
-
telnet_password
800e3fda208da80f
-
latest_crawl
2026-08-11 14:00:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://brassandbonect.com/events/> (referer: None)
-
latest_stat
2026-08-11 14:00:18 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
-
latest_scrape
2026-08-11 14:00:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
-
latest_item
{'event_url': 'https://brassandbonect.com/events/#midnight_cardinal_at_brass_&_bone_saturday_08_22_2026', 'platform_hash': 'e13843b4b7e09a32288d3baf2c458376', 'raw_body': '<html><body><div class="content-grid__item event" ' 'data-date="2026-08-22" data-id="124" data-start-time="930PM" ' 'data-title="Midnight Cardinal at Brass & Bone"><div ' 'class="event-image"><img alt="Midnight Cardinal" ' 'decoding="async" height="410" loading="lazy" ' 'src="/images/posters/124/small.webp" ' 'srcset="/images/posters/124/small.webp, ' '/images/posters/124/medium.webp 2x" width="328"/></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 aria-label="View website for Midnight ' 'Cardinal" class="social-link" ' 'href="https://www.midnightcardinal.com/" target="_blank"><img ' ',="" alt="website logo" decoding="async" height="40" ' 'loading="lazy" src="/images/social/website/1x.webp" ' 'srcset="/images/social/website/1x.webp, ' '/images/social/website/2x.webp 2x, ' '/images/social/website/3x.webp 3x" width="40"/> </a><a ' 'aria-label="View facebook profile for Midnight Cardinal" ' 'class="social-link" ' 'href="https://www.facebook.com/Midnight-Cardinal-61570073564175" ' 'target="_blank"><img ,="" alt="facebook logo" decoding="async" ' 'height="40" loading="lazy" src="/images/social/facebook/1x.webp" ' 'srcset="/images/social/facebook/1x.webp, ' '/images/social/facebook/2x.webp 2x, ' '/images/social/facebook/3x.webp 3x" width="40"/> </a><a ' 'aria-label="View instagram profile for Midnight Cardinal" ' 'class="social-link" ' 'href="https://www.instagram.com/midnightcardinalmusic" ' 'target="_blank"><img ,="" alt="instagram logo" decoding="async" ' 'height="40" loading="lazy" ' 'src="/images/social/instagram/1x.webp" ' 'srcset="/images/social/instagram/1x.webp, ' '/images/social/instagram/2x.webp 2x, ' '/images/social/instagram/3x.webp 3x" ' 'width="40"/></a></div></div></body></html>'}
DEBUG
-
-
-
Head
2026-08-11 14:00:17 [scrapy.utils.log] INFO: Scrapy 2.14.1 started (bot: event_scrapers) 2026-08-11 14:00: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 14:00:17 [scrapy.crawler] DEBUG: Using AsyncCrawlerProcess 2026-08-11 14:00:17 [asyncio] DEBUG: Using selector: EpollSelector 2026-08-11 14:00:17 [scrapy.addons] INFO: Enabled addons: [] 2026-08-11 14:00:18 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor 2026-08-11 14:00:18 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop 2026-08-11 14:00:18 [scrapy.extensions.telnet] INFO: Telnet Password: 800e3fda208da80f 2026-08-11 14:00:18 [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 14:00:18 [scrapy.crawler] INFO: Overridden settings: {'BOT_NAME': 'event_scrapers', 'FEED_EXPORT_ENCODING': 'utf-8', 'FEED_URI_PARAMS': <function _feed_uri_params at 0x71c5e67134c0>, 'LOG_FILE': '/root/event-list-scraping/logs/event_scrapers/brass_bonect/367a3bfe957c11f1b2f90050565fa5d9.log', 'NEWSPIDER_MODULE': 'event_scrapers.spiders', 'REQUEST_FINGERPRINTER_CLASS': 'scrapy_zyte_api.ScrapyZyteAPIRequestFingerprinter', 'SPIDER_MODULES': ['event_scrapers.spiders']} 2026-08-11 14:00:18 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec' 2026-08-11 14:00:18 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec' 2026-08-11 14:00:18 [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 14:00:18 [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 14:00:18 [scrapy.middleware] INFO: Enabled item pipelines: ['event_scrapers.pipelines.EventScrapersPipeline'] 2026-08-11 14:00:18 [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 14:00:18 [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 14:00:18 [scrapy.core.engine] INFO: Spider opened 2026-08-11 14:00:18 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.brass_bonect.BrassBonectSpider 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 14:00:18 [brass_bonect] INFO: Sending scraped events to prod API 2026-08-11 14:00:18 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min) 2026-08-11 14:00:18 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023 2026-08-11 14:00:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://brassandbonect.com/events/> (referer: None) 2026-08-11 14:00:18 [py.warnings] WARNING: /root/event-list-scraping/event_scrapers/spiders/brass_bonect.py:25: 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 25 of the file /root/event-list-scraping/event_scrapers/spiders/brass_bonect.py. To get rid of this warning, pass the additional argument 'features="lxml"' to the BeautifulSoup constructor. item['raw_body'] = str(bs(event.get())) 2026-08-11 14:00:18 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443 2026-08-11 14:00:18 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 1248 2026-08-11 14:00:18 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/> {'event_url': 'https://brassandbonect.com/events/#open_mic_night_at_brass_&_bone_tuesday_08_18_2026', 'platform_hash': 'e13843b4b7e09a32288d3baf2c458376', 'raw_body': '<html><body><div class="content-grid__item event" ' 'data-date="2026-08-18" data-id="2" data-start-time="8PM" ' 'data-title="Open Mic Night at Brass & Bone"><div ' 'class="event-image"><img alt="Open Mic Night" decoding="async" ' 'height="5" loading="lazy" ' 'src="/images/posters/open-mic-night/small.webp" ' 'srcset="/images/posters/open-mic-night/small.webp, ' '/images/posters/open-mic-night/medium.webp 2x" ' 'width="4"/></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 ' -
Tail
'decoding="async" height="410" loading="lazy" ' 'src="/images/posters/100/small.webp" ' 'srcset="/images/posters/100/small.webp, ' '/images/posters/100/medium.webp 2x" width="328"/></div><p ' 'class="event-datetime"><span class="-capitalize">saturday ' '08/15</span> 930PM</p><p class="event-title">Zully Ramos and the ' 'OGs</p><div class="event-description">A long time performer, ' 'Zully Ramos has sung on countless stages across the Tri-State ' 'area. From theater and cabaret performances around Fairfield ' 'County, to being the lead singer of various bands, Zully has ' 'trained her voice to cross genres.</div><div ' 'class="event-links"><a aria-label="View youtube profile for ' 'Zully Ramos and the OGs" class="social-link" ' 'href="https://www.youtube.com/@ZullyRamosMusic" ' 'target="_blank"><img ,="" alt="youtube logo" decoding="async" ' 'height="40" loading="lazy" src="/images/social/youtube/1x.webp" ' 'srcset="/images/social/youtube/1x.webp, ' '/images/social/youtube/2x.webp 2x, ' '/images/social/youtube/3x.webp 3x" width="40"/> </a><a ' 'aria-label="View facebook profile for Zully Ramos and the OGs" ' 'class="social-link" ' 'href="https://www.facebook.com/ZullyRamosMusic" ' 'target="_blank"><img ,="" alt="facebook logo" decoding="async" ' 'height="40" loading="lazy" src="/images/social/facebook/1x.webp" ' 'srcset="/images/social/facebook/1x.webp, ' '/images/social/facebook/2x.webp 2x, ' '/images/social/facebook/3x.webp 3x" width="40"/> </a><a ' 'aria-label="View instagram profile for Zully Ramos and the OGs" ' 'class="social-link" href="https://www.instagram.com/zrandtheogs" ' 'target="_blank"><img ,="" alt="instagram logo" decoding="async" ' 'height="40" loading="lazy" ' 'src="/images/social/instagram/1x.webp" ' 'srcset="/images/social/instagram/1x.webp, ' '/images/social/instagram/2x.webp 2x, ' '/images/social/instagram/3x.webp 3x" ' 'width="40"/></a></div></div></body></html>'} 2026-08-11 14:00:19 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443 2026-08-11 14:00:19 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 1048 2026-08-11 14:00:19 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/> {'event_url': 'https://brassandbonect.com/events/#mike_cusa_at_brass_&_bone_thursday_08_20_2026', 'platform_hash': 'e13843b4b7e09a32288d3baf2c458376', 'raw_body': '<html><body><div class="content-grid__item event" ' 'data-date="2026-08-20" data-id="130" data-start-time="5PM" ' 'data-title="Mike Cusa at Brass & Bone"><div ' 'class="event-image"><img alt="Mike Cusa" decoding="async" ' 'height="410" loading="lazy" src="/images/posters/130/small.webp" ' 'srcset="/images/posters/130/small.webp, ' '/images/posters/130/medium.webp 2x" width="328"/></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></body></html>'} 2026-08-11 14:00:19 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443 2026-08-11 14:00:20 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 3893 2026-08-11 14:00:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/> {'event_url': 'https://brassandbonect.com/events/#peak_at_brass_&_bone_friday_08_21_2026', 'platform_hash': 'e13843b4b7e09a32288d3baf2c458376', 'raw_body': '<html><body><div class="content-grid__item event" ' 'data-date="2026-08-21" data-id="114" data-start-time="930PM" ' 'data-title="PEAK at Brass & Bone"><div ' 'class="event-image"><img alt="PEAK" decoding="async" ' 'height="410" loading="lazy" src="/images/posters/114/small.webp" ' 'srcset="/images/posters/114/small.webp, ' '/images/posters/114/medium.webp 2x" width="328"/></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 aria-label="View website ' 'for PEAK" class="social-link" ' 'href="https://www.peaktheband.com/" target="_blank"><img ,="" ' 'alt="website logo" decoding="async" height="40" loading="lazy" ' 'src="/images/social/website/1x.webp" ' 'srcset="/images/social/website/1x.webp, ' '/images/social/website/2x.webp 2x, ' '/images/social/website/3x.webp 3x" width="40"/> </a><a ' 'aria-label="View spotify profile for PEAK" class="social-link" ' 'href="https://open.spotify.com/artist/3Irtra1o5fL2pJMPPtXHxd" ' 'target="_blank"><img ,="" alt="spotify logo" decoding="async" ' 'height="40" loading="lazy" src="/images/social/spotify/1x.webp" ' 'srcset="/images/social/spotify/1x.webp, ' '/images/social/spotify/2x.webp 2x, ' '/images/social/spotify/3x.webp 3x" width="40"/> </a><a ' 'aria-label="View facebook profile for PEAK" class="social-link" ' 'href="https://www.facebook.com/PEAKbandNYC" target="_blank"><img ' ',="" alt="facebook logo" decoding="async" height="40" ' 'loading="lazy" src="/images/social/facebook/1x.webp" ' 'srcset="/images/social/facebook/1x.webp, ' '/images/social/facebook/2x.webp 2x, ' '/images/social/facebook/3x.webp 3x" width="40"/> </a><a ' 'aria-label="View instagram profile for PEAK" class="social-link" ' 'href="https://www.instagram.com/peaktheband" ' 'target="_blank"><img ,="" alt="instagram logo" decoding="async" ' 'height="40" loading="lazy" ' 'src="/images/social/instagram/1x.webp" ' 'srcset="/images/social/instagram/1x.webp, ' '/images/social/instagram/2x.webp 2x, ' '/images/social/instagram/3x.webp 3x" ' 'width="40"/></a></div></div></body></html>'} 2026-08-11 14:00:20 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443 2026-08-11 14:00:20 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 400 68 2026-08-11 14:00:20 [brass_bonect] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]} 2026-08-11 14:00:20 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/> {'event_url': 'https://brassandbonect.com/events/#midnight_cardinal_at_brass_&_bone_saturday_08_22_2026', 'platform_hash': 'e13843b4b7e09a32288d3baf2c458376', 'raw_body': '<html><body><div class="content-grid__item event" ' 'data-date="2026-08-22" data-id="124" data-start-time="930PM" ' 'data-title="Midnight Cardinal at Brass & Bone"><div ' 'class="event-image"><img alt="Midnight Cardinal" ' 'decoding="async" height="410" loading="lazy" ' 'src="/images/posters/124/small.webp" ' 'srcset="/images/posters/124/small.webp, ' '/images/posters/124/medium.webp 2x" width="328"/></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 aria-label="View website for Midnight ' 'Cardinal" class="social-link" ' 'href="https://www.midnightcardinal.com/" target="_blank"><img ' ',="" alt="website logo" decoding="async" height="40" ' 'loading="lazy" src="/images/social/website/1x.webp" ' 'srcset="/images/social/website/1x.webp, ' '/images/social/website/2x.webp 2x, ' '/images/social/website/3x.webp 3x" width="40"/> </a><a ' 'aria-label="View facebook profile for Midnight Cardinal" ' 'class="social-link" ' 'href="https://www.facebook.com/Midnight-Cardinal-61570073564175" ' 'target="_blank"><img ,="" alt="facebook logo" decoding="async" ' 'height="40" loading="lazy" src="/images/social/facebook/1x.webp" ' 'srcset="/images/social/facebook/1x.webp, ' '/images/social/facebook/2x.webp 2x, ' '/images/social/facebook/3x.webp 3x" width="40"/> </a><a ' 'aria-label="View instagram profile for Midnight Cardinal" ' 'class="social-link" ' 'href="https://www.instagram.com/midnightcardinalmusic" ' 'target="_blank"><img ,="" alt="instagram logo" decoding="async" ' 'height="40" loading="lazy" ' 'src="/images/social/instagram/1x.webp" ' 'srcset="/images/social/instagram/1x.webp, ' '/images/social/instagram/2x.webp 2x, ' '/images/social/instagram/3x.webp 3x" ' 'width="40"/></a></div></div></body></html>'} 2026-08-11 14:00:20 [scrapy.core.engine] INFO: Closing spider (finished) 2026-08-11 14:00:20 [scrapy.extensions.feedexport] INFO: Stored csv feed (11 items) in: output/2026/08/11/brass_bonect.csv 2026-08-11 14:00:20 [scrapy.statscollectors] INFO: Dumping Scrapy stats: {'downloader/request_bytes': 230, 'downloader/request_count': 1, 'downloader/request_method_count/GET': 1, 'downloader/response_bytes': 9326, 'downloader/response_count': 1, 'downloader/response_status_count/200': 1, 'elapsed_time_seconds': 2.097897, 'feedexport/success_count/FileFeedStorage': 1, 'finish_reason': 'finished', 'finish_time': datetime.datetime(2026, 8, 11, 12, 0, 20, 217814, tzinfo=datetime.timezone.utc), 'httpcompression/response_bytes': 39705, 'httpcompression/response_count': 1, 'item_scraped_count': 11, 'items_per_minute': 330.0, 'log_count/DEBUG': 34, 'log_count/ERROR': 3, 'log_count/INFO': 3, 'log_count/WARNING': 1, 'memusage/max': 99631104, 'memusage/startup': 99631104, 'response_received_count': 1, 'responses_per_minute': 30.0, 'scheduler/dequeued': 1, 'scheduler/dequeued/memory': 1, 'scheduler/enqueued': 1, 'scheduler/enqueued/memory': 1, 'start_time': datetime.datetime(2026, 8, 11, 12, 0, 18, 119917, tzinfo=datetime.timezone.utc)} 2026-08-11 14:00:20 [scrapy.core.engine] INFO: Spider closed (finished) -
Log
-
Source
http://127.0.0.1:6800/logs/event_scrapers/brass_bonect/367a3bfe957c11f1b2f90050565fa5d9.log
-
-
source log last update time 2026-08-11 14:00:20 last update timestamp 1786449620 downloader / request bytes 230 downloader / request count 1 downloader / request method count / GET 1 downloader / response bytes 9326 downloader / response count 1 downloader / response status count / 200 1 elapsed time seconds 2.097897 feedexport / success count / FileFeedStorage 1 finish reason finished finish time datetime.datetime(2026, 8, 11, 12, 0, 20, 217814, tzinfo=datetime.timezone.utc) httpcompression / response bytes 39705 httpcompression / response count 1 item scraped count 11 items per minute 330.0 log count / DEBUG 34 log count / ERROR 3 log count / INFO 3 log count / WARNING 1 memusage / max 99631104 memusage / startup 99631104 response received count 1 responses per minute 30.0 scheduler / dequeued 1 scheduler / dequeued / memory 1 scheduler / enqueued 1 scheduler / enqueued / memory 1 start time datetime.datetime(2026, 8, 11, 12, 0, 18, 119917, tzinfo=datetime.timezone.utc)