• 'pip install logparser' on host '127.0.0.1:6800' and run command 'logparser'. Or wait until LogParser parses the log.

PROJECT (event_scrapers), SPIDER (brass_and_bonect)

  • Log analysis
  • Log categorization
  • View log
  • Crawler.stats
  • projectevent_scrapers
    spiderbrass_and_bonect
    job57bee27e692411f19f480050565fa5d9
    first_log_time2026-06-16 03:40:28
    latest_log_time2026-06-16 03:40:32
    runtime0:00:04
    crawled_pages 1
    scraped_items 20
    shutdown_reasonN/A
    finish_reasonfinished
    log_critical_count0
    log_error_count5
    log_warning_count2
    log_redirect_count0
    log_retry_count0
    log_ignore_count0
    latest_crawl
    latest_scrape
    latest_log
    current_time
    latest_item{'event_url': 'https://brassandbonect.com/events/#badmanagement_thursday08/20', 'platform_hash': 'e13843b4b7e09a32288d3baf2c458376', 'raw_body': '<div class="content-grid__item event" data-id="101" ' 'data-start-time="9PM" data-date="2026-08-20" data-title="Bad ' 'Management at Brass &amp; Bone"><div class="event-image"><img ' 'class="undefined" loading="lazy" decoding="async" alt="Bad ' 'Management" width="328" height="410" ' 'src="/images/posters/101/small.webp" ' 'srcset="/images/posters/101/small.webp, ' '/images/posters/101/medium.webp 2x"></div><p ' 'class="event-datetime"><span class="-capitalize">thursday ' '08/20</span> 9PM</p><p class="event-title">Bad ' 'Management</p><div class="event-description">Hailing from the ' 'corners of CT, Bad Management is here to serve you a heaping ' 'portion of funk with a healthy side of rock and blues, and a ' 'nice jar of jams to finish it off!</div><div ' 'class="event-links"><a class="social-link" ' 'href="https://www.instagram.com/badmanagementband" ' 'target="_blank"><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>'}
    • WARNING+

    • error_logs
      5 in total

      2026-06-16 03:40:30 [brass_and_bonect] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 03:40:31 [brass_and_bonect] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 03:40:32 [brass_and_bonect] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 03:40:32 [brass_and_bonect] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 03:40:32 [brass_and_bonect] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
    • warning_logs
      2 in total

      2026-06-16 03:40:29 [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 03:40:29 [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(
      

      INFO

      DEBUG

    • scrapy_version

      2.14.1
    • telnet_console

      127.0.0.1:6023
    • telnet_password

      60d10049df4d9f0c
    • latest_crawl

      2026-06-16 03:40:30 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://brassandbonect.com/events/> (referer: None) ['zyte-api']
    • latest_stat

      2026-06-16 03:40:29 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
    • latest_scrape

      2026-06-16 03:40:32 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
    • latest_item

      {'event_url': 'https://brassandbonect.com/events/#badmanagement_thursday08/20',
       'platform_hash': 'e13843b4b7e09a32288d3baf2c458376',
       'raw_body': '<div class="content-grid__item event" data-id="101" '
                   'data-start-time="9PM" data-date="2026-08-20" data-title="Bad '
                   'Management at Brass &amp; Bone"><div class="event-image"><img '
                   'class="undefined" loading="lazy" decoding="async" alt="Bad '
                   'Management" width="328" height="410" '
                   'src="/images/posters/101/small.webp" '
                   'srcset="/images/posters/101/small.webp, '
                   '/images/posters/101/medium.webp 2x"></div><p '
                   'class="event-datetime"><span class="-capitalize">thursday '
                   '08/20</span> 9PM</p><p class="event-title">Bad '
                   'Management</p><div class="event-description">Hailing from the '
                   'corners of CT, Bad Management is here to serve you a heaping '
                   'portion of funk with a healthy side of rock and blues, and a '
                   'nice jar of jams to finish it off!</div><div '
                   'class="event-links"><a class="social-link" '
                   'href="https://www.instagram.com/badmanagementband" '
                   'target="_blank"><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>'}
    • Head

      2026-06-16 03:40:28 [scrapy.utils.log] INFO: Scrapy 2.14.1 started (bot: event_scrapers)
      2026-06-16 03:40:28 [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 03:40:28 [scrapy.crawler] DEBUG: Using AsyncCrawlerProcess
      2026-06-16 03:40:28 [asyncio] DEBUG: Using selector: EpollSelector
      2026-06-16 03:40:28 [scrapy.addons] INFO: Enabled addons:
      []
      2026-06-16 03:40:29 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor
      2026-06-16 03:40:29 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop
      2026-06-16 03:40:29 [scrapy.extensions.telnet] INFO: Telnet Password: 60d10049df4d9f0c
      2026-06-16 03:40:29 [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 03:40:29 [scrapy.crawler] INFO: Overridden settings:
      {'BOT_NAME': 'event_scrapers',
       'FEED_EXPORT_ENCODING': 'utf-8',
       'FEED_URI_PARAMS': <function _feed_uri_params at 0x70a887fe4540>,
       'LOG_FILE': '/root/event-list-scraping/logs/event_scrapers/brass_and_bonect/57bee27e692411f19f480050565fa5d9.log',
       'NEWSPIDER_MODULE': 'event_scrapers.spiders',
       'REQUEST_FINGERPRINTER_CLASS': 'scrapy_zyte_api.ScrapyZyteAPIRequestFingerprinter',
       'SPIDER_MODULES': ['event_scrapers.spiders']}
      2026-06-16 03:40:29 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
      2026-06-16 03:40:29 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
      2026-06-16 03:40:29 [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 03:40:29 [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 03:40:29 [scrapy.middleware] INFO: Enabled item pipelines:
      ['event_scrapers.pipelines.EventScrapersPipeline']
      2026-06-16 03:40:29 [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 03:40:29 [scrapy.core.engine] INFO: Spider opened
      2026-06-16 03:40:29 [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-06-16 03:40:29 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
      2026-06-16 03:40:29 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
      2026-06-16 03:40:29 [zyte_api._retry] DEBUG: Starting call to 'zyte_api._async.AsyncZyteAPI.get.<locals>.request', this is the 1st time calling it.
      2026-06-16 03:40:30 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://brassandbonect.com/events/> (referer: None) ['zyte-api']
      2026-06-16 03:40:30 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): 144.91.120.141:80
      2026-06-16 03:40:30 [urllib3.connectionpool] DEBUG: http://144.91.120.141:80 "POST /api/v1/raw-events/ HTTP/1.1" 201 1192
      2026-06-16 03:40:30 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
      {'event_url': 'https://brassandbonect.com/events/#openmicnight_tuesday06/16',
       'platform_hash': 'e13843b4b7e09a32288d3baf2c458376',
       'raw_body': '<div class="content-grid__item event" data-id="2" '
                   'data-start-time="8PM" data-date="2026-06-16" data-title="Open '
                   'Mic Night at Brass &amp; Bone"><div class="event-image"><img '
                   'class="undefined" loading="lazy" decoding="async" alt="Open Mic '
                   'Night" 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 '
                   '06/16</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-06-16 03:40:30 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): 144.91.120.141:80
      2026-06-16 03:40:30 [urllib3.connectionpool] DEBUG: http://144.91.120.141:80 "POST /api/v1/raw-events/ HTTP/1.1" 201 1140
      2026-06-16 03:40:30 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
      {'event_url': 'https://brassandbonect.com/events/#karaoke_wednesday06/17',
       'platform_hash': 'e13843b4b7e09a32288d3baf2c458376',
       'raw_body': '<div class="content-grid__item event" data-id="24" '
                   'data-start-time="8PM" data-date="2026-06-17" data-title="Karaoke '
                   'at Brass &amp; Bone"><div class="event-image"><img '
                   'class="undefined" loading="lazy" decoding="async" alt="Karaoke" '
    • Tail

                   '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/kovacbrothersmusic" '
                   'target="_blank"><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-06-16 03:40:32 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): 144.91.120.141:80
      2026-06-16 03:40:32 [urllib3.connectionpool] DEBUG: http://144.91.120.141:80 "POST /api/v1/raw-events/ HTTP/1.1" 201 4250
      2026-06-16 03:40:32 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
      {'event_url': 'https://brassandbonect.com/events/#fuzzonit_thursday07/30',
       'platform_hash': 'e13843b4b7e09a32288d3baf2c458376',
       'raw_body': '<div class="content-grid__item event" data-id="92" '
                   'data-start-time="9PM" data-date="2026-07-30" data-title="Fuzz On '
                   'It at Brass &amp; Bone"><div class="event-image"><img '
                   'class="undefined" loading="lazy" decoding="async" alt="Fuzz On '
                   'It" width="328" height="410" src="/images/posters/92/small.webp" '
                   'srcset="/images/posters/92/small.webp, '
                   '/images/posters/92/medium.webp 2x"></div><p '
                   'class="event-datetime"><span class="-capitalize">thursday '
                   '07/30</span> 9PM</p><p class="event-title">Fuzz On It</p><div '
                   'class="event-description">Guitarist, vocalist, songwriter, '
                   'producer and all around energetic and engaging performer, Fuzz '
                   'has enjoyed a successful career as an international touring and '
                   'recording artist for the past twenty-five years. Most notably '
                   'with projects he created such as Deep Banana Blackout, Caravan '
                   'of Thieves and Big Fuzz in addition to touring with the Tom Tom '
                   'Club and sharing the stage with The Allman Brothers, John '
                   'Scofield, Keb Mo, Emmylou Harris, Bela Fleck, The Meters, '
                   'members of Phish, the James Brown band and many '
                   'others.<br><br>Being a creative visionary, Fuzz has been able to '
                   'blend a variety of styles in each of his projects resulting in a '
                   'uniquely unified sound and securing his niche on the funk, jam, '
                   'folk, jazz and performing arts scenes. His latest endeavor, '
                   '“Fuzz On It” is a culmination of all of these efforts bringing '
                   'together the essential elements of his past projects while '
                   'stirring in some island seasoning for a little sunny ‘funk in '
                   'the sun’. Performances can range from solo acoustic to a large '
                   'electric band filled with some of the many talented musicians '
                   'Fuzz has collaborated with over the years. Regardless of the '
                   'configuration however, the delivery is consistently dynamic, '
                   'fun, and full of energy. Life is good!</div><div '
                   'class="event-links"><a class="social-link" '
                   'href="https://fuzzonit.com/" target="_blank"><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/2al8ctW77lVlBd2DFMJnit" '
                   'target="_blank"><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.youtube.com/@fuzzonit" '
                   'target="_blank"><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/fuzzonit" '
                   'target="_blank"><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/fuzz_on_it" '
                   'target="_blank"><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><a '
                   'class="social-link" '
                   'href="https://music.apple.com/us/artist/fuzz-on-it/1741634960" '
                   'target="_blank"><img src="/images/social/apple_music/1x.webp" , '
                   'srcset="/images/social/apple_music/1x.webp, '
                   '/images/social/apple_music/2x.webp 2x, '
                   '/images/social/apple_music/3x.webp 3x" alt="apple_music logo" '
                   'width="40" height="40" loading="lazy" '
                   'decoding="async"></a></div></div>'}
      2026-06-16 03:40:32 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): 144.91.120.141:80
      2026-06-16 03:40:32 [urllib3.connectionpool] DEBUG: http://144.91.120.141:80 "POST /api/v1/raw-events/ HTTP/1.1" 400 68
      2026-06-16 03:40:32 [brass_and_bonect] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 03:40:32 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
      {'event_url': 'https://brassandbonect.com/events/#zullyramosandtheogs_saturday08/15',
       'platform_hash': 'e13843b4b7e09a32288d3baf2c458376',
       'raw_body': '<div class="content-grid__item event" data-id="100" '
                   'data-start-time="930PM" data-date="2026-08-15" data-title="Zully '
                   'Ramos and the OGs at Brass &amp; Bone"><div '
                   'class="event-image"><img class="undefined" loading="lazy" '
                   'decoding="async" alt="Zully Ramos and the OGs" width="328" '
                   'height="410" src="/images/posters/100/small.webp" '
                   'srcset="/images/posters/100/small.webp, '
                   '/images/posters/100/medium.webp 2x"></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 class="social-link" '
                   'href="https://www.youtube.com/@ZullyRamosMusic" '
                   'target="_blank"><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"><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"><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-06-16 03:40:32 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): 144.91.120.141:80
      2026-06-16 03:40:32 [urllib3.connectionpool] DEBUG: http://144.91.120.141:80 "POST /api/v1/raw-events/ HTTP/1.1" 400 68
      2026-06-16 03:40:32 [brass_and_bonect] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 03:40:32 [scrapy.core.scraper] DEBUG: Scraped from <200 https://brassandbonect.com/events/>
      {'event_url': 'https://brassandbonect.com/events/#badmanagement_thursday08/20',
       'platform_hash': 'e13843b4b7e09a32288d3baf2c458376',
       'raw_body': '<div class="content-grid__item event" data-id="101" '
                   'data-start-time="9PM" data-date="2026-08-20" data-title="Bad '
                   'Management at Brass &amp; Bone"><div class="event-image"><img '
                   'class="undefined" loading="lazy" decoding="async" alt="Bad '
                   'Management" width="328" height="410" '
                   'src="/images/posters/101/small.webp" '
                   'srcset="/images/posters/101/small.webp, '
                   '/images/posters/101/medium.webp 2x"></div><p '
                   'class="event-datetime"><span class="-capitalize">thursday '
                   '08/20</span> 9PM</p><p class="event-title">Bad '
                   'Management</p><div class="event-description">Hailing from the '
                   'corners of CT, Bad Management is here to serve you a heaping '
                   'portion of funk with a healthy side of rock and blues, and a '
                   'nice jar of jams to finish it off!</div><div '
                   'class="event-links"><a class="social-link" '
                   'href="https://www.instagram.com/badmanagementband" '
                   'target="_blank"><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-06-16 03:40:32 [scrapy.core.engine] INFO: Closing spider (finished)
      2026-06-16 03:40:32 [scrapy.extensions.feedexport] INFO: Stored csv feed (20 items) in: output/2026/06/16/brass_and_bonect.csv
      2026-06-16 03:40:32 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
      {'downloader/request_bytes': 230,
       'downloader/request_count': 1,
       'downloader/request_method_count/GET': 1,
       'downloader/response_bytes': 50329,
       'downloader/response_count': 1,
       'downloader/response_status_count/200': 1,
       'elapsed_time_seconds': 3.271617,
       'feedexport/success_count/FileFeedStorage': 1,
       'finish_reason': 'finished',
       'finish_time': datetime.datetime(2026, 6, 16, 1, 40, 32, 470517, tzinfo=datetime.timezone.utc),
       'item_scraped_count': 20,
       'items_per_minute': 400.0,
       'log_count/DEBUG': 62,
       'log_count/ERROR': 5,
       'log_count/INFO': 3,
       'memusage/max': 93171712,
       'memusage/startup': 93171712,
       'response_received_count': 1,
       'responses_per_minute': 20.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': 1.0275289304554462,
       'scrapy-zyte-api/mean_response_seconds': 1.153498761355877,
       '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, 6, 16, 1, 40, 29, 198900, tzinfo=datetime.timezone.utc)}
      2026-06-16 03:40:32 [scrapy.core.engine] INFO: Spider closed (finished)
    • Log

      /1/log/utf8/event_scrapers/brass_and_bonect/57bee27e692411f19f480050565fa5d9/?job_finished=True

    • Source

      http://127.0.0.1:6800/logs/event_scrapers/brass_and_bonect/57bee27e692411f19f480050565fa5d9.log

  • sourcelog
    last_update_time2026-06-16 03:40:32
    last_update_timestamp1781574032
    downloader/request_bytes230
    downloader/request_count1
    downloader/request_method_count/GET1
    downloader/response_bytes50329
    downloader/response_count1
    downloader/response_status_count/2001
    elapsed_time_seconds3.271617
    feedexport/success_count/FileFeedStorage1
    finish_reasonfinished
    finish_timedatetime.datetime(2026, 6, 16, 1, 40, 32, 470517, tzinfo=datetime.timezone.utc)
    item_scraped_count20
    items_per_minute400.0
    log_count/DEBUG62
    log_count/ERROR5
    log_count/INFO3
    memusage/max93171712
    memusage/startup93171712
    response_received_count1
    responses_per_minute20.0
    scheduler/dequeued1
    scheduler/dequeued/memory1
    scheduler/enqueued1
    scheduler/enqueued/memory1
    scrapy-zyte-api/4290
    scrapy-zyte-api/attempts1
    scrapy-zyte-api/error_ratio0.0
    scrapy-zyte-api/errors0
    scrapy-zyte-api/fatal_errors0
    scrapy-zyte-api/mean_connection_seconds1.0275289304554462
    scrapy-zyte-api/mean_response_seconds1.153498761355877
    scrapy-zyte-api/processed1
    scrapy-zyte-api/request_args/httpResponseBody1
    scrapy-zyte-api/request_args/httpResponseHeaders1
    scrapy-zyte-api/request_args/url1
    scrapy-zyte-api/status_codes/2001
    scrapy-zyte-api/success1
    scrapy-zyte-api/success_ratio1.0
    scrapy-zyte-api/throttle_ratio0.0
    start_timedatetime.datetime(2026, 6, 16, 1, 40, 29, 198900, tzinfo=datetime.timezone.utc)