• '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 (music_theatre)

  • Log analysis
  • Log categorization
  • View log
  • Crawler.stats
  • projectevent_scrapers
    spidermusic_theatre
    jobecfa043a95b611f18c450050565fa5d9
    first_log_time2026-08-11 21:00:37
    latest_log_time2026-08-11 21:00:39
    runtime0:00:02
    crawled_pages 3
    scraped_items 2
    shutdown_reasonN/A
    finish_reasonfinished
    log_critical_count0
    log_error_count0
    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://app.arts-people.com/?show=346164', 'platform': 'music theatre ofct', 'platform_hash': 'a34ebb398c7ce231420dc0818f369187', 'raw_body': '<html><body><table border="0" cellpadding="0" cellspacing="0" ' 'class="content"><tr><td>\n' '<!-- BEGIN table Object 2885 -->\n' '<table border="0" cellpadding="0" cellspacing="0" ' 'class="table_basic" id="TBL2885"><tr> <td width="33%">\n' '<!-- BEGIN table Object 236 -->\n' '<table id="TBL236" style="margin-right:20px;"><tr><td> <img ' 'class="image_user" src="/uploads/3050/KateKatcherFocus.png"/> ' '</td></tr>\n' '<tr><td> <div class="show_text_div"> <span class="normal" ' 'id=""></span> <span class="normal" id="show_text"><p><span ' 'style="font-size: 12pt; background-color: #ffff00; color: ' '#000000;"><strong>MTC\xa0New Voices Reading ' 'Series</strong></span></p>\n' '<p><span style="font-size: 18pt; background-color: #ffff00; ' 'color: #000000;"><strong><em><span style="background-color: ' '#ffffff;">36</span><br/>\n' '</em></strong></span></p>\n' '<p><em><span style="font-size: 12pt;">by</span></em><span ' 'style="font-size: 12pt;">\xa0Kate Katcher</span></p>\n' '<p><span style="font-size: 14pt;">August 11, 2026 at ' '7:30pm</span></p>\n' '<p><span style="font-size: 12pt;">In summer 1984, Maxine Weiss ' 'struggles to hold her demanding family together when her eldest ' 'daughter announces she is moving to California. Against the ' 'backdrop of the Lamed Vav legend, the family must learn to let ' 'go, break free, and discover unexpected strength.<br/>\n' '</span></p></span> </div></td></tr></table>\n' '<!-- END table Object 236 -->\n' '</td><td></td> <td align="LEFT" valign="TOP">\n' '<!-- BEGIN table Object 240 -->\n' '<table id="TBL240" style="width:100%;"><tr><td> <span ' 'class="emph"> Please select a performance</span> </td></tr>\n' '<tr><td>\n' '<!-- BEGIN htable Object performances -->\n' '<table class="htable" id="TBLperformances" ' 'style="width:100%;"><tr> <th style="vertical-align:top; ' 'padding-top: 7px;"> </th><th></th></tr><tr> <td ' 'style="vertical-align:top; padding-top: 7px;"> <img ' 'class="image_user" ' 'src="/uploads/3050/3050-mtct-2022-bullet.png"/> </td><td>\n' '<!-- BEGIN table Object 4600 -->\n' '<table id="TBL4600" style="min-width:250px;"><tr><td> <a ' 'class="" ' 'href="https://app.arts-people.com/index.php?actions=4&amp;p=3" ' 'id="A2538">Tue, Aug 11th, 2026 at 7:30 pm</a> </td></tr>\n' '<tr><td align="left"> <span class="normal" id=""></span> <span ' 'class="normal" id="sold_out_text"></span> </td></tr></table>\n' '<!-- END table Object 4600 -->\n' '</td></tr>\n' '</table>\n' '<!-- END htable Object performances -->\n' ' \xa0 </td></tr>\n' '<tr><td> <input class="btn btn-sm-bs3 btn-default ' 'btn-outline-secondary" id="BTNnav_back_1" name="6" type="SUBMIT" ' 'value="Back"/> </td></tr>\n' '<tr><td> </td><td>\xa0 </td></tr></table>\n' '<!-- END table Object 240 -->\n' '</td> <td style="padding-left: 20px; width: 30%;">\n' '<!-- BEGIN table Object 300 -->\n' '<table id="TBL300"><tr><td><br/> </td></tr>\n' '<tr><td align="left"> <span class="emph"> </span> <span ' 'class="normal" id="11400"><p>All Tickets: $20</p>\n' '<p></p>\n' '<p>+$5 service fee per ticket<br/>\n' ' +$3 facility fee per ticket<br/>\n' '<em>Fees apply whether you purchase tix online, over the phone, ' 'or in person.</em></p>\n' '<p></p>\n' '<p><strong>What are these fees?</strong><br/>\n' ' The service fee is charged by our ticketing service, ' 'ArtsPeople.<br/>\n' ' The facility fee goes towards the maintenance and operation of ' 'MTC.</p></span> </td></tr></table>\n' '<!-- END table Object 300 -->\n' '</td></tr></table>\n' '<!-- END table Object 2885 -->\n' '</td></tr></table></body></html>'}
    • WARNING+

    • warning_logs
      2 in total

      2026-08-11 21:00:37 [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 21:00:37 [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 21:00:37 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.music_theatre.ListingSpider 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 21:00:38 [scrapy_zyte_api._params] WARNING: Cookies are enabled for request <GET https://app.arts-people.com/?show=334844>, and there are cookies in the cookiejar, but ZYTE_API_EXPERIMENTAL_COOKIES_ENABLED is False, so automatic mapping will not map cookies for this or any other request. To silence this warning, disable cookies for all requests that use automatic mapping, either with the COOKIES_ENABLED setting or with the dont_merge_cookies request metadata key.
      2026-08-11 21:00:38 [py.warnings] WARNING: /root/event-list-scraping/event_scrapers/spiders/music_theatre.py:34: 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 34 of the file /root/event-list-scraping/event_scrapers/spiders/music_theatre.py. To get rid of this warning, pass the additional argument 'features="lxml"' to the BeautifulSoup constructor.
      
        item['raw_body'] = str(bs(body))
      

      INFO

      DEBUG

    • scrapy_version

      2.14.1
    • telnet_console

      127.0.0.1:6023
    • telnet_password

      ca8979697159e74b
    • latest_crawl

      2026-08-11 21:00:39 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://app.arts-people.com/?show=346164> (referer: https://app.arts-people.com/index.php?ticketing=mtct)
    • latest_stat

      2026-08-11 21:00:37 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
    • latest_scrape

      2026-08-11 21:00:39 [scrapy.core.scraper] DEBUG: Scraped from <200 https://app.arts-people.com/?show=346164>
    • latest_item

      {'event_url': 'https://app.arts-people.com/?show=346164',
       'platform': 'music theatre ofct',
       'platform_hash': 'a34ebb398c7ce231420dc0818f369187',
       'raw_body': '<html><body><table border="0" cellpadding="0" cellspacing="0" '
                   'class="content"><tr><td>\n'
                   '<!-- BEGIN  table Object 2885 -->\n'
                   '<table border="0" cellpadding="0" cellspacing="0" '
                   'class="table_basic" id="TBL2885"><tr> <td width="33%">\n'
                   '<!-- BEGIN  table Object 236 -->\n'
                   '<table id="TBL236" style="margin-right:20px;"><tr><td> <img '
                   'class="image_user" src="/uploads/3050/KateKatcherFocus.png"/> '
                   '</td></tr>\n'
                   '<tr><td> <div class="show_text_div"> <span class="normal" '
                   'id=""></span> <span class="normal" id="show_text"><p><span '
                   'style="font-size: 12pt; background-color: #ffff00; color: '
                   '#000000;"><strong>MTC\xa0New Voices Reading '
                   'Series</strong></span></p>\n'
                   '<p><span style="font-size: 18pt; background-color: #ffff00; '
                   'color: #000000;"><strong><em><span style="background-color: '
                   '#ffffff;">36</span><br/>\n'
                   '</em></strong></span></p>\n'
                   '<p><em><span style="font-size: 12pt;">by</span></em><span '
                   'style="font-size: 12pt;">\xa0Kate Katcher</span></p>\n'
                   '<p><span style="font-size: 14pt;">August 11, 2026 at '
                   '7:30pm</span></p>\n'
                   '<p><span style="font-size: 12pt;">In summer 1984, Maxine Weiss '
                   'struggles to hold her demanding family together when her eldest '
                   'daughter announces she is moving to California. Against the '
                   'backdrop of the Lamed Vav legend, the family must learn to let '
                   'go, break free, and discover unexpected strength.<br/>\n'
                   '</span></p></span> </div></td></tr></table>\n'
                   '<!-- END table Object 236 -->\n'
                   '</td><td></td> <td align="LEFT" valign="TOP">\n'
                   '<!-- BEGIN  table Object 240 -->\n'
                   '<table id="TBL240" style="width:100%;"><tr><td> <span '
                   'class="emph"> Please select a performance</span> </td></tr>\n'
                   '<tr><td>\n'
                   '<!-- BEGIN  htable Object performances -->\n'
                   '<table class="htable" id="TBLperformances" '
                   'style="width:100%;"><tr> <th style="vertical-align:top; '
                   'padding-top: 7px;"> </th><th></th></tr><tr> <td '
                   'style="vertical-align:top; padding-top: 7px;"> <img '
                   'class="image_user" '
                   'src="/uploads/3050/3050-mtct-2022-bullet.png"/> </td><td>\n'
                   '<!-- BEGIN  table Object 4600 -->\n'
                   '<table id="TBL4600" style="min-width:250px;"><tr><td> <a '
                   'class="" '
                   'href="https://app.arts-people.com/index.php?actions=4&amp;p=3" '
                   'id="A2538">Tue, Aug 11th, 2026 at 7:30 pm</a> </td></tr>\n'
                   '<tr><td align="left"> <span class="normal" id=""></span> <span '
                   'class="normal" id="sold_out_text"></span> </td></tr></table>\n'
                   '<!-- END table Object 4600 -->\n'
                   '</td></tr>\n'
                   '</table>\n'
                   '<!-- END htable Object performances -->\n'
                   ' \xa0 </td></tr>\n'
                   '<tr><td> <input class="btn btn-sm-bs3 btn-default '
                   'btn-outline-secondary" id="BTNnav_back_1" name="6" type="SUBMIT" '
                   'value="Back"/> </td></tr>\n'
                   '<tr><td> </td><td>\xa0 </td></tr></table>\n'
                   '<!-- END table Object 240 -->\n'
                   '</td> <td style="padding-left: 20px; width: 30%;">\n'
                   '<!-- BEGIN  table Object 300 -->\n'
                   '<table id="TBL300"><tr><td><br/> </td></tr>\n'
                   '<tr><td align="left"> <span class="emph"> </span> <span '
                   'class="normal" id="11400"><p>All Tickets: $20</p>\n'
                   '<p></p>\n'
                   '<p>+$5 service fee per ticket<br/>\n'
                   ' +$3 facility fee per ticket<br/>\n'
                   '<em>Fees apply whether you purchase tix online, over the phone, '
                   'or in person.</em></p>\n'
                   '<p></p>\n'
                   '<p><strong>What are these fees?</strong><br/>\n'
                   ' The service fee is charged by our ticketing service, '
                   'ArtsPeople.<br/>\n'
                   ' The facility fee goes towards the maintenance and operation of '
                   'MTC.</p></span> </td></tr></table>\n'
                   '<!-- END table Object 300 -->\n'
                   '</td></tr></table>\n'
                   '<!-- END table Object 2885 -->\n'
                   '</td></tr></table></body></html>'}
    • Head

      2026-08-11 21:00:37 [scrapy.utils.log] INFO: Scrapy 2.14.1 started (bot: event_scrapers)
      2026-08-11 21:00:37 [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 21:00:37 [scrapy.crawler] DEBUG: Using AsyncCrawlerProcess
      2026-08-11 21:00:37 [asyncio] DEBUG: Using selector: EpollSelector
      2026-08-11 21:00:37 [scrapy.addons] INFO: Enabled addons:
      []
      2026-08-11 21:00:37 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor
      2026-08-11 21:00:37 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop
      2026-08-11 21:00:37 [scrapy.extensions.telnet] INFO: Telnet Password: ca8979697159e74b
      2026-08-11 21:00:37 [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 21:00:37 [scrapy.crawler] INFO: Overridden settings:
      {'BOT_NAME': 'event_scrapers',
       'FEED_EXPORT_ENCODING': 'utf-8',
       'FEED_URI_PARAMS': <function _feed_uri_params at 0x75699503b4c0>,
       'LOG_FILE': '/root/event-list-scraping/logs/event_scrapers/music_theatre/ecfa043a95b611f18c450050565fa5d9.log',
       'NEWSPIDER_MODULE': 'event_scrapers.spiders',
       'REQUEST_FINGERPRINTER_CLASS': 'scrapy_zyte_api.ScrapyZyteAPIRequestFingerprinter',
       'SPIDER_MODULES': ['event_scrapers.spiders']}
      2026-08-11 21:00:37 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
      2026-08-11 21:00:37 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
      2026-08-11 21:00:37 [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 21:00:37 [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 21:00:37 [scrapy.middleware] INFO: Enabled item pipelines:
      ['event_scrapers.pipelines.EventScrapersPipeline']
      2026-08-11 21:00:37 [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 21:00:37 [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 21:00:37 [scrapy.core.engine] INFO: Spider opened
      2026-08-11 21:00:37 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.music_theatre.ListingSpider 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 21:00:37 [music_theatre] INFO: Sending scraped events to prod API
      2026-08-11 21:00:37 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
      2026-08-11 21:00:37 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
      2026-08-11 21:00:38 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://app.arts-people.com/index.php?ticketing=mtct> (referer: None)
      2026-08-11 21:00:38 [scrapy_zyte_api._params] WARNING: Cookies are enabled for request <GET https://app.arts-people.com/?show=334844>, and there are cookies in the cookiejar, but ZYTE_API_EXPERIMENTAL_COOKIES_ENABLED is False, so automatic mapping will not map cookies for this or any other request. To silence this warning, disable cookies for all requests that use automatic mapping, either with the COOKIES_ENABLED setting or with the dont_merge_cookies request metadata key.
      2026-08-11 21:00:38 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://app.arts-people.com/?show=334844> (referer: https://app.arts-people.com/index.php?ticketing=mtct)
      2026-08-11 21:00:38 [py.warnings] WARNING: /root/event-list-scraping/event_scrapers/spiders/music_theatre.py:34: 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 34 of the file /root/event-list-scraping/event_scrapers/spiders/music_theatre.py. To get rid of this warning, pass the additional argument 'features="lxml"' to the BeautifulSoup constructor.
      
        item['raw_body'] = str(bs(body))
      
      2026-08-11 21:00:38 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
      2026-08-11 21:00:39 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 3908
      2026-08-11 21:00:39 [scrapy.core.scraper] DEBUG: Scraped from <200 https://app.arts-people.com/?show=334844>
      {'event_url': 'https://app.arts-people.com/?show=334844',
       'platform': 'music theatre ofct',
       'platform_hash': 'a34ebb398c7ce231420dc0818f369187',
       'raw_body': '<html><body><table border="0" cellpadding="0" cellspacing="0" '
                   'class="content"><tr><td>\n'
                   '<!-- BEGIN  table Object 2885 -->\n'
                   '<table border="0" cellpadding="0" cellspacing="0" '
                   'class="table_basic" id="TBL2885"><tr> <td width="33%">\n'
                   '<!-- BEGIN  table Object 236 -->\n'
                   '<table id="TBL236" style="margin-right:20px;"><tr><td> <img '
                   'class="image_user" '
                   'src="/uploads/3050/HSN-2026-Randye-Kaye-Logo-2.png"/> '
                   '</td></tr>\n'
                   '<tr><td> <div class="show_text_div"> <span class="normal" '
                   'id=""></span> <span class="normal" id="show_text"><p><span '
    • Tail

      {'event_url': 'https://app.arts-people.com/?show=334844',
       'platform': 'music theatre ofct',
       'platform_hash': 'a34ebb398c7ce231420dc0818f369187',
       'raw_body': '<html><body><table border="0" cellpadding="0" cellspacing="0" '
                   'class="content"><tr><td>\n'
                   '<!-- BEGIN  table Object 2885 -->\n'
                   '<table border="0" cellpadding="0" cellspacing="0" '
                   'class="table_basic" id="TBL2885"><tr> <td width="33%">\n'
                   '<!-- BEGIN  table Object 236 -->\n'
                   '<table id="TBL236" style="margin-right:20px;"><tr><td> <img '
                   'class="image_user" '
                   'src="/uploads/3050/HSN-2026-Randye-Kaye-Logo-2.png"/> '
                   '</td></tr>\n'
                   '<tr><td> <div class="show_text_div"> <span class="normal" '
                   'id=""></span> <span class="normal" id="show_text"><p><span '
                   'style="font-size: 12pt; background-color: #ff6600; color: '
                   '#ffffff;"><strong>MTC\xa0Hot Summer Nights</strong></span></p>\n'
                   '<p><span style="font-size: 18pt;"><strong><em>Cracks and All: A '
                   'Perfectly Imperfect Life<br/>\n'
                   '</em>by Randye Kaye</strong></span></p>\n'
                   '<p><span style="font-size: 14pt;">August 15, 2026 at '
                   '8:00pm</span></p>\n'
                   '<p><span style="font-size: 12pt;">Cracks and All, Randye Kaye’s '
                   'one-woman show, asks the question: “Can we be loved, even if we, '
                   'and our lives, are far from perfect?” Even if our past is full '
                   'of errors of judgment, dreams that fizzle, and sudden trauma? '
                   'Can we love, and laugh, flaws and all? </span></p></span> '
                   '</div></td></tr></table>\n'
                   '<!-- END table Object 236 -->\n'
                   '</td><td></td> <td align="LEFT" valign="TOP">\n'
                   '<!-- BEGIN  table Object 240 -->\n'
                   '<table id="TBL240" style="width:100%;"><tr><td> <span '
                   'class="emph"> Please select a performance</span> </td></tr>\n'
                   '<tr><td>\n'
                   '<!-- BEGIN  htable Object performances -->\n'
                   '<table class="htable" id="TBLperformances" '
                   'style="width:100%;"><tr> <th style="vertical-align:top; '
                   'padding-top: 7px;"> </th><th></th></tr><tr> <td '
                   'style="vertical-align:top; padding-top: 7px;"> <img '
                   'class="image_user" '
                   'src="/uploads/3050/3050-mtct-2022-bullet.png"/> </td><td>\n'
                   '<!-- BEGIN  table Object 4600 -->\n'
                   '<table id="TBL4600" style="min-width:250px;"><tr><td> <a '
                   'class="" '
                   'href="https://app.arts-people.com/index.php?actions=4&amp;p=2" '
                   'id="A2538">Sat, Aug 15th, 2026 at 8:00 pm</a> </td></tr>\n'
                   '<tr><td align="left"> <span class="normal" id=""></span> <span '
                   'class="normal" id="sold_out_text"></span> </td></tr></table>\n'
                   '<!-- END table Object 4600 -->\n'
                   '</td></tr>\n'
                   '</table>\n'
                   '<!-- END htable Object performances -->\n'
                   ' \xa0 </td></tr>\n'
                   '<tr><td> <input class="btn btn-sm-bs3 btn-default '
                   'btn-outline-secondary" id="BTNnav_back_1" name="6" type="SUBMIT" '
                   'value="Back"/> </td></tr>\n'
                   '<tr><td> </td><td>\xa0 </td></tr></table>\n'
                   '<!-- END table Object 240 -->\n'
                   '</td> <td style="padding-left: 20px; width: 30%;">\n'
                   '<!-- BEGIN  table Object 300 -->\n'
                   '<table id="TBL300"><tr><td><br/> </td></tr>\n'
                   '<tr><td align="left"> <span class="emph"> </span> <span '
                   'class="normal" id="11400"><p><span style="font-size: '
                   '10pt;"><strong>All Tickets:\xa0</strong>$45</span></p>\n'
                   '<p></p>\n'
                   '<p><span style="font-size: 10pt;">+$5 service fee per '
                   'ticket</span><br/>\n'
                   '<span style="font-size: 10pt;"> +$3 facility fee per '
                   'ticket</span><br/>\n'
                   '<span style="font-size: 10pt;"> <em>Fees apply whether you '
                   'purchase tix online, over the phone, or in '
                   'person.</em></span></p>\n'
                   '<p></p>\n'
                   '<p><span style="font-size: 10pt;"><strong>What are these '
                   'fees?</strong></span><br/>\n'
                   '<span style="font-size: 10pt;"> The service fee is charged by '
                   'our ticketing service, ArtsPeople.</span><br/>\n'
                   '<span style="font-size: 10pt;"> The facility fee goes towards '
                   'the maintenance and operation of MTC.</span></p></span> '
                   '</td></tr></table>\n'
                   '<!-- END table Object 300 -->\n'
                   '</td></tr></table>\n'
                   '<!-- END table Object 2885 -->\n'
                   '</td></tr></table></body></html>'}
      2026-08-11 21:00:39 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://app.arts-people.com/?show=346164> (referer: https://app.arts-people.com/index.php?ticketing=mtct)
      2026-08-11 21:00:39 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
      2026-08-11 21:00:39 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 3766
      2026-08-11 21:00:39 [scrapy.core.scraper] DEBUG: Scraped from <200 https://app.arts-people.com/?show=346164>
      {'event_url': 'https://app.arts-people.com/?show=346164',
       'platform': 'music theatre ofct',
       'platform_hash': 'a34ebb398c7ce231420dc0818f369187',
       'raw_body': '<html><body><table border="0" cellpadding="0" cellspacing="0" '
                   'class="content"><tr><td>\n'
                   '<!-- BEGIN  table Object 2885 -->\n'
                   '<table border="0" cellpadding="0" cellspacing="0" '
                   'class="table_basic" id="TBL2885"><tr> <td width="33%">\n'
                   '<!-- BEGIN  table Object 236 -->\n'
                   '<table id="TBL236" style="margin-right:20px;"><tr><td> <img '
                   'class="image_user" src="/uploads/3050/KateKatcherFocus.png"/> '
                   '</td></tr>\n'
                   '<tr><td> <div class="show_text_div"> <span class="normal" '
                   'id=""></span> <span class="normal" id="show_text"><p><span '
                   'style="font-size: 12pt; background-color: #ffff00; color: '
                   '#000000;"><strong>MTC\xa0New Voices Reading '
                   'Series</strong></span></p>\n'
                   '<p><span style="font-size: 18pt; background-color: #ffff00; '
                   'color: #000000;"><strong><em><span style="background-color: '
                   '#ffffff;">36</span><br/>\n'
                   '</em></strong></span></p>\n'
                   '<p><em><span style="font-size: 12pt;">by</span></em><span '
                   'style="font-size: 12pt;">\xa0Kate Katcher</span></p>\n'
                   '<p><span style="font-size: 14pt;">August 11, 2026 at '
                   '7:30pm</span></p>\n'
                   '<p><span style="font-size: 12pt;">In summer 1984, Maxine Weiss '
                   'struggles to hold her demanding family together when her eldest '
                   'daughter announces she is moving to California. Against the '
                   'backdrop of the Lamed Vav legend, the family must learn to let '
                   'go, break free, and discover unexpected strength.<br/>\n'
                   '</span></p></span> </div></td></tr></table>\n'
                   '<!-- END table Object 236 -->\n'
                   '</td><td></td> <td align="LEFT" valign="TOP">\n'
                   '<!-- BEGIN  table Object 240 -->\n'
                   '<table id="TBL240" style="width:100%;"><tr><td> <span '
                   'class="emph"> Please select a performance</span> </td></tr>\n'
                   '<tr><td>\n'
                   '<!-- BEGIN  htable Object performances -->\n'
                   '<table class="htable" id="TBLperformances" '
                   'style="width:100%;"><tr> <th style="vertical-align:top; '
                   'padding-top: 7px;"> </th><th></th></tr><tr> <td '
                   'style="vertical-align:top; padding-top: 7px;"> <img '
                   'class="image_user" '
                   'src="/uploads/3050/3050-mtct-2022-bullet.png"/> </td><td>\n'
                   '<!-- BEGIN  table Object 4600 -->\n'
                   '<table id="TBL4600" style="min-width:250px;"><tr><td> <a '
                   'class="" '
                   'href="https://app.arts-people.com/index.php?actions=4&amp;p=3" '
                   'id="A2538">Tue, Aug 11th, 2026 at 7:30 pm</a> </td></tr>\n'
                   '<tr><td align="left"> <span class="normal" id=""></span> <span '
                   'class="normal" id="sold_out_text"></span> </td></tr></table>\n'
                   '<!-- END table Object 4600 -->\n'
                   '</td></tr>\n'
                   '</table>\n'
                   '<!-- END htable Object performances -->\n'
                   ' \xa0 </td></tr>\n'
                   '<tr><td> <input class="btn btn-sm-bs3 btn-default '
                   'btn-outline-secondary" id="BTNnav_back_1" name="6" type="SUBMIT" '
                   'value="Back"/> </td></tr>\n'
                   '<tr><td> </td><td>\xa0 </td></tr></table>\n'
                   '<!-- END table Object 240 -->\n'
                   '</td> <td style="padding-left: 20px; width: 30%;">\n'
                   '<!-- BEGIN  table Object 300 -->\n'
                   '<table id="TBL300"><tr><td><br/> </td></tr>\n'
                   '<tr><td align="left"> <span class="emph"> </span> <span '
                   'class="normal" id="11400"><p>All Tickets: $20</p>\n'
                   '<p></p>\n'
                   '<p>+$5 service fee per ticket<br/>\n'
                   ' +$3 facility fee per ticket<br/>\n'
                   '<em>Fees apply whether you purchase tix online, over the phone, '
                   'or in person.</em></p>\n'
                   '<p></p>\n'
                   '<p><strong>What are these fees?</strong><br/>\n'
                   ' The service fee is charged by our ticketing service, '
                   'ArtsPeople.<br/>\n'
                   ' The facility fee goes towards the maintenance and operation of '
                   'MTC.</p></span> </td></tr></table>\n'
                   '<!-- END table Object 300 -->\n'
                   '</td></tr></table>\n'
                   '<!-- END table Object 2885 -->\n'
                   '</td></tr></table></body></html>'}
      2026-08-11 21:00:39 [scrapy.core.engine] INFO: Closing spider (finished)
      2026-08-11 21:00:39 [scrapy.extensions.feedexport] INFO: Stored csv feed (2 items) in: output/2026/08/11/music_theatre.csv
      2026-08-11 21:00:39 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
      {'downloader/request_bytes': 1114,
       'downloader/request_count': 3,
       'downloader/request_method_count/GET': 3,
       'downloader/response_bytes': 12696,
       'downloader/response_count': 3,
       'downloader/response_status_count/200': 3,
       'elapsed_time_seconds': 1.760342,
       'feedexport/success_count/FileFeedStorage': 1,
       'finish_reason': 'finished',
       'finish_time': datetime.datetime(2026, 8, 11, 19, 0, 39, 454276, tzinfo=datetime.timezone.utc),
       'httpcompression/response_bytes': 45469,
       'httpcompression/response_count': 3,
       'item_scraped_count': 2,
       'items_per_minute': 120.0,
       'log_count/DEBUG': 9,
       'log_count/INFO': 3,
       'log_count/WARNING': 2,
       'memusage/max': 99663872,
       'memusage/startup': 99663872,
       'request_depth_max': 1,
       'response_received_count': 3,
       'responses_per_minute': 180.0,
       'scheduler/dequeued': 3,
       'scheduler/dequeued/memory': 3,
       'scheduler/enqueued': 3,
       'scheduler/enqueued/memory': 3,
       'start_time': datetime.datetime(2026, 8, 11, 19, 0, 37, 693934, tzinfo=datetime.timezone.utc)}
      2026-08-11 21:00:39 [scrapy.core.engine] INFO: Spider closed (finished)
    • Log

      /1/log/utf8/event_scrapers/music_theatre/ecfa043a95b611f18c450050565fa5d9/?job_finished=True

    • Source

      http://127.0.0.1:6800/logs/event_scrapers/music_theatre/ecfa043a95b611f18c450050565fa5d9.log

  • sourcelog
    last_update_time2026-08-11 21:00:39
    last_update_timestamp1786474839
    downloader/request_bytes1114
    downloader/request_count3
    downloader/request_method_count/GET3
    downloader/response_bytes12696
    downloader/response_count3
    downloader/response_status_count/2003
    elapsed_time_seconds1.760342
    feedexport/success_count/FileFeedStorage1
    finish_reasonfinished
    finish_timedatetime.datetime(2026, 8, 11, 19, 0, 39, 454276, tzinfo=datetime.timezone.utc)
    httpcompression/response_bytes45469
    httpcompression/response_count3
    item_scraped_count2
    items_per_minute120.0
    log_count/DEBUG9
    log_count/INFO3
    log_count/WARNING2
    memusage/max99663872
    memusage/startup99663872
    request_depth_max1
    response_received_count3
    responses_per_minute180.0
    scheduler/dequeued3
    scheduler/dequeued/memory3
    scheduler/enqueued3
    scheduler/enqueued/memory3
    start_timedatetime.datetime(2026, 8, 11, 19, 0, 37, 693934, tzinfo=datetime.timezone.utc)