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

  • Log analysis
  • Log categorization
  • View log
  • Crawler.stats
  • projectevent_scrapers
    spiderdarien_library
    jobed59dd02693711f1b9080050565fa5d9
    first_log_time2026-06-16 06:00:38
    latest_log_time2026-06-16 06:01:12
    runtime0:00:34
    crawled_pages 192
    scraped_items 182
    shutdown_reasonN/A
    finish_reasonfinished
    log_critical_count0
    log_error_count134
    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://www.darienlibrary.org/event/tech-help-tuesday-110435', 'platform': 'Darien Library', 'platform_hash': 'a5eecd9001dc7446b4cffaec033e21f0', 'raw_body': '<main role="main" class="main-container container">\n' ' <a id="main-content" tabindex="-1"></a>\n' '\n' ' <div class="content-region">\n' ' \n' '<div class="views-element-container block block-views ' 'block-views-blocklc-announcements-lc-announcements-block ' 'position-relative" ' 'id="block-views-block-lc-announcements-lc-announcements-block">\n' ' \n' ' \n' ' <div>\n' '\n' '\n' '\n' ' \n' '<div class="lc-announcements view view-lc-announcements ' 'view-id-lc_announcements view-display-id-lc_announcements_block ' 'js-view-dom-id-afef28ae871197912cb1f55317d499e8e7285bc85f0ce4021ef503ea32ce895f ' 'row">\n' ' <div class="col-md-12">\n' ' \n' ' \n' ' </div>\n' ' <div class="content-container py-0 col-md-12">\n' ' \n' ' <div class="view-content">\n' ' <div class="views-row">\n' '\n' ' <div class="announcement announcement--yellow-alert">\n' ' <div class="announcement__content">\n' ' <h4 class="announcement__title">\n' '<span>Closed on Juneteenth</span>\n' '</h4>\n' '\n' ' \n' '\n' ' <div class="field-container"><p>The Library is ' 'closed on Friday, June 19th. <a href="/digital">We\'re always ' 'open online at Digital Darien &gt;&gt;</a></p></div>\n' ' \n' '\n' ' </div>\n' '</div>\n' '</div>\n' '\n' ' </div>\n' ' \n' ' </div>\n' '</div>\n' '</div>\n' '\n' ' </div>\n' '<div data-drupal-messages-fallback class="hidden"></div>\n' '\n' '<div id="block-website-theme-breadcrumbs" class="block ' 'block-system block-system-breadcrumb-block position-relative">\n' ' \n' ' \n' ' <nav role="navigation" aria-label="Breadcrumb">\n' ' <ol class="breadcrumb">\n' ' <li class="breadcrumb-item">\n' ' <a href="/">Home</a>\n' ' </li>\n' ' </ol>\n' ' </nav>\n' '\n' ' </div>\n' '\n' '<div id="block-website-theme-page-title" class="block block-core ' 'block-page-title-block position-relative">\n' ' \n' ' \n' ' \n' ' <h1 class="mb-4">\n' '<span>Tech Help Tuesday</span>\n' '</h1>\n' '\n' '\n' ' </div>\n' '\n' '<div id="block-website-theme-content" class="block block-system ' 'block-system-main-block position-relative">\n' ' \n' ' \n' ' \n' '\n' '\n' '\n' ' \n' '\n' '\n' '<article class="lc-event lc-event--full node node--type-lc-event ' 'node--promoted node--view-mode-full">\n' '\n' ' \n' ' \n' '\n' ' <div class="lc-event__menu-tasks"><div ' 'class="lc-menu-tasks"> <h2 class="visually-hidden">Primary ' 'tabs</h2>\n' ' <ul class="list-inline"><li class="list-inline-item"><a ' 'href="/events/upcoming" class="button button--primary btn-sm" ' 'data-drupal-link-system-path="events/upcoming">Upcoming</a></li>\n' '<li class="list-inline-item"><a href="/events/list" ' 'class="button button--primary btn-sm" ' 'data-drupal-link-system-path="events/list">List</a></li>\n' '<li class="list-inline-item"><a href="/events/month/2026/06" ' 'class="button button--primary btn-sm" ' 'data-drupal-link-system-path="events/month/2026/06">Month</a></li>\n' '<li class="list-inline-item"><a href="/events/week/2026/06/16" ' 'class="button button--primary btn-sm" ' 'data-drupal-link-system-path="events/week/2026/06/16">Week</a></li>\n' '<li class="list-inline-item"><a href="/events/day/2026/06/16" ' 'class="button button--primary btn-sm" ' 'data-drupal-link-system-path="events/day/2026/06/16">Day</a></li>\n' '</ul>\n' '</div>\n' '</div>\n' ' \n' ' <div class="node__content lc-event-wrapper">\n' ' <aside class="lc-event-sidebar lc-event__sidebar">\n' ' <div class="lc-print-row">\n' ' <div class="lc-print-column">\n' ' <div class="lc-event-details lc-event-section">\n' ' <div class="lc-date-icon" aria-hidden="true">\n' ' <span class="lc-date-icon__item ' 'lc-date-icon__item--month">\n' ' Jun\n' ' </span>\n' ' \n' ' <span class="lc-date-icon__item ' 'lc-date-icon__item--day">\n' ' 16\n' ' </span>\n' ' \n' ' <span class="lc-date-icon__item lc-date-icon__item--year">\n' ' 2026\n' ' </span>\n' '\n' ' <span class="lc-date-icon__item ' 'lc-date-icon__item--day-name">\n' ' Tue\n' ' </span>\n' ' </div>\n' '\n' '\n' ' <div class="lc-event-info">\n' ' <h3 class="lc-event-subtitle ' 'lc-event-branch">\n' ' Darien Library\n' ' </h3>\n' ' \n' ' <h3 class="lc-event-subtitle ' 'lc-event-room">\n' ' Research Room\n' ' </h3>\n' ' \n' ' <div class="lc-event-info-item ' 'lc-event-info-item--date">\n' ' Tuesday, June 16, 2026\n' ' </div>\n' '\n' ' <div class="lc-event-info-item ' 'lc-event-info-item--time">\n' ' 2:00pm–3:00pm\n' ' </div>\n' ' \n' '\n' ' \n' ' </div>\n' ' </div>\n' '\n' ' <div class="lc-repeating-dates ' 'lc-event-section">\n' ' <details class="lc-repeating-dates__details">\n' ' <summary class="lc-repeating-dates__toggle">\n' ' Also Occurs On <span ' 'class="lc-repeating-dates__toggle-icon" ' 'role="presentation">:</span>\n' ' </summary>\n' '\n' ' <div class="lc-repeating-dates__wrapper">\n' ' <ul class="lc-repeating-dates__list">\n' ' \n' ' \n' ' \n' ' \n' ' <li class="lc-repeating-dates__item">\n' ' <a ' 'href="/event/tech-help-tuesday-110430" ' 'class="lc-repeating-dates__link">\n' ' 05/12/26\n' ' </a>\n' ' </li>\n' ' \n' ' \n' ' \n' ' \n' ' <li class="lc-repeating-dates__item">\n' ' <a ' 'href="/event/tech-help-tuesday-110431" ' 'class="lc-repeating-dates__link">\n' ' 05/19/26\n' ' </a>\n' ' </li>\n' ' \n' ' \n' ' \n' ' \n' ' <li class="lc-repeating-dates__item">\n' ' <a ' 'href="/event/tech-help-tuesday-110432" ' 'class="lc-repeating-dates__link">\n' ' 05/26/26\n' ' </a>\n' ' </li>\n' ' \n' ' \n' ' \n' ' \n' ' <li class="lc-repeating-dates__item">\n' ' <a ' 'href="/event/tech-help-tuesday-110433" ' 'class="lc-repeating-dates__link">\n' ' 06/02/26\n' ' </a>\n' ' </li>\n' ' \n' ' \n' ' \n' ' \n' ' <li class="lc-repeating-dates__item">\n' ' <a ' 'href="/event/tech-help-tuesday-110434" ' 'class="lc-repeating-dates__link">\n' ' 06/09/26\n' ' </a>\n' ' </li>\n' ' \n' ' \n' ' \n' ' \n' ' <li class="lc-repeating-dates__item">\n' ' <a ' 'href="/event/tech-help-tuesday-110435" ' 'class="lc-repeating-dates__link active">\n' ' 06/16/26\n' ' </a>\n' ' </li>\n' ' \n' ' \n' ' \n' ' \n' ' <li class="lc-repeating-dates__item">\n' ' <a ' 'href="/event/tech-help-tuesday-110436" ' 'class="lc-repeating-dates__link">\n' ' 06/23/26\n' ' </a>\n' ' </li>\n' ' \n' ' \n' ' \n' ' \n' ' <li class="lc-repeating-dates__item">\n' ' <a ' 'href="/event/tech-help-tuesday-110437" ' 'class="lc-repeating-dates__link">\n' ' 06/30/26\n' ' </a>\n' ' </li>\n' ' </ul>\n' ' </div>\n' ' </details>\n' ' </div>\n' ' </div>\n' ' \n' ' </div>\n' ' </aside>\n' ' <section class="lc-event-content lc-event__content">\n' ' <div class="lc-event-share-event">\n' '\n' '\n' '<div class="lc-event-actions lc-event-actions--share-event">\n' ' <ul class="lc-event-actions__list">\n' ' <li class="lc-event-actions__item">\n' ' \n' ' <a href="/node/110435/reminder_form" class="button ' 'button--primary lc-event-action-link use-ajax" ' 'data-dialog-options=\'{"title":"Setup ' 'Reminder","width":"auto"}\' data-dialog-type="modal" ' 'title="Remind Me" data-toggle="tooltip">\n' ' <span class="lc-event-actions__icon ' 'lc-event-actions__icon--reminder"></span>\n' ' <span class="lc-event-actions__text">Remind Me</span>\n' ' </a>\n' ' </li>\n' ' \n' ' <li class="lc-event-actions__item">\n' ' \n' ' <a href="/node/110435/add_to_calendar" class="button ' 'button--primary lc-event-action-link use-ajax" ' 'data-dialog-options=\'{"title":"Add This Event To Your ' 'Calendar","width":"auto"}\' data-dialog-type="modal" title="Add ' 'To My Calendar" data-toggle="tooltip">\n' ' <span class="lc-event-actions__icon ' 'lc-event-actions__icon--calendar"></span>\n' ' <span class="lc-event-actions__text">Add To My ' 'Calendar</span>\n' ' </a>\n' ' </li>\n' ' \n' ' <li class="lc-event-actions__item">\n' ' \n' ' <a href="#" class="button button--primary ' 'lc-event-action-link" onclick="window.print()" title="Print this ' 'event" data-toggle="tooltip">\n' ' <span class="lc-event-actions__icon ' 'lc-event-actions__icon--print"></span>\n' ' <span class="lc-event-actions__text">Print</span>\n' ' </a>\n' ' </li>\n' ' \n' ' <li class="lc-event-actions__item">\n' ' \n' ' <a href="/node/110435/share_this_event" class="button ' 'button--primary lc-event-action-link use-ajax" ' 'data-dialog-options=\'{"dialogClass":"white-popup","title":"Share ' 'This Event","width":"auto"}\' data-dialog-type="modal" ' 'title="Share this event" data-toggle="tooltip">\n' ' <span class="lc-event-actions__icon ' 'lc-event-actions__icon--share"></span>\n' ' <span class="lc-event-actions__text">Share</span>\n' ' </a>\n' ' </li>\n' ' \n' ' </ul>\n' '</div>\n' '</div>\n' ' \n' ' <div class="lc-event__categories ' 'lc-event__program-types">\n' ' <h3 class="lc-event-label lc-d-inline">Program ' 'Type:</h3>\n' ' <span><a ' 'href="/events/upcoming?program_types%5B12%5D=12">Technology</a></span>\n' ' </div>\n' ' \n' ' <div class="lc-event__categories ' 'lc-event__age-groups">\n' ' <h3 class="lc-event-label lc-d-inline">\n' ' Age Group:\n' ' </h3>\n' '\n' ' <span><a ' 'href="/events/upcoming?age_groups%5B4%5D=4">Adults</a></span>\n' ' </div>\n' ' \n' ' \n' ' \n' ' \n' '\n' ' <div></div>\n' '\n' '\n' ' \n' ' \n' ' \n' ' <h2 class="lc-event-subtitle visually-hidden">Program ' 'Description</h2>\n' ' \n' ' \n' ' <h3 class="lc-event-subtitle">Event ' 'Details</h3>\n' ' \n' ' \n' ' \n' ' \n' ' \n' '\n' ' <div class="field-container"><p>Drop in during this ' 'weekly open session for technology related help on using your ' 'cellphone, tablet, or computer.</p><p>First come, first served ' 'and is best suited for quick help ' 'questions.</p><h3><strong>Topics can ' 'include:</strong></h3><ul><li>Computer basics, internet, and ' 'email</li><li>Using a computer, tablet or cell ' 'phone</li><li>Accessing digital e-Books and ' "audiobooks</li><li>Utilizing Darien Library's resources and " 'databases</li><li>Microsoft Word, PowerPoint, ' 'Excel</li><li>Google apps</li><li>Research tips using ' 'databases</li><li>Genealogy</li></ul><p>For more in-depth tech ' 'help, a one-on-one tech help appointment is recommended. Call\xa0' '<a href="tel:2036695238"><strong>203-669-5238</strong></a>\xa0or ' '<a ' 'href="https://www.darienlibrary.org/services/book-librarian"><strong>schedule ' 'a Book-a Librarian appointment.</strong></a></p></div>\n' ' \n' ' \n' ' \n' ' \n' ' \n' ' \n' ' <div></div>\n' '\n' ' </section>\n' ' <aside class="lc-event-sidebar">\n' ' <div class="lc-event-location">\n' ' <h2 class="lc-event-subtitle">Location ' 'Details</h2>\n' ' \n' ' <div class="lc-event-location-map ' 'lc-event-section"><iframe allowfullscreen frameborder="0" ' 'height="300" ' 'src="https://www.google.com/maps?output=embed&amp;q=1441+Post+Road%2C+Darien%2C+CT+06820%2C+United+States" ' 'style="width: 100%;" title="Darien Library on Google Maps" ' 'width="600"></iframe>\n' '</div>\n' ' \n' ' \n' ' <div class="lc-event-location-address ' 'lc-event-section">\n' ' <p class="lc-font-weight-bold">Darien ' 'Library</p>\n' '\n' ' <div class="lc-address-line ' 'lc-address-line--first">\n' ' 1441 Post Road\n' ' </div>\n' '\n' ' <div class="lc-address-line ' 'lc-address-line--second">\n' ' Darien,\n' ' CT\n' ' 06820\n' ' </div>\n' '\n' ' <div ' 'class="lc-event-location__phone">\n' ' <a href="tel:2036551234">\n' ' (203) 655-1234\n' ' </a>\n' ' </div>\n' ' \n' ' <div class="lc-branch-select-map-link">\n' ' See map:\n' ' <a ' 'href="http://maps.google.com/?q=1441%20Post%20Road,+Darien,+CT,+06820">\n' ' Google Maps </a>\n' ' </div>\n' ' \n' ' \n' ' </div>\n' '\n' ' \n' ' \n' ' <div ' 'class="lc-event-address-container">\n' ' <h2 class="lc-event-subtitle">Contact Info</h2>\n' '\n' ' <div class="lc-event-info-item ' 'lc-event-contact-name">\n' ' <span class="lc-font-weight-bold">\n' ' Name: </span>\n' '\n' ' Mary-Beth Mason\n' ' </div>\n' ' \n' ' <div class="lc-event-info-item ' 'lc-event-contact-email">\n' ' <span class="lc-font-weight-bold">\n' ' Email:\n' ' </span>\n' '\n' ' <a href="mailto:mmason@darienlibrary.org">\n' ' mmason@darienlibrary.org\n' ' </a>\n' ' </div>\n' ' \n' ' \n' ' </div>\n' ' \n' ' \n' ' </div>\n' ' </aside>\n' ' </div>\n' '\n' ' <div></div>\n' '\n' '\n' '</article>\n' '\n' ' </div>\n' '\n' '<div id="block-chatwidget" class="block block-block-content ' 'block-block-content63a310d3-960f-4513-8d41-03110820bfc1 ' 'position-relative">\n' ' \n' ' \n' ' \n' '\n' ' <div class="field-container"><div ' 'class="needs-js">chat loading...</div>\n' '<script type="text/javascript">\n' ' (function() {\n' ' var x = document.createElement("script"); x.type = ' '"text/javascript"; x.async = true;\n' ' x.src = (document.location.protocol === "https:" ? ' '"https://" : "http://") + ' '"libraryh3lp.com/js/libraryh3lp.js?18222";\n' ' var y = document.getElementsByTagName("script")[0]; ' 'y.parentNode.insertBefore(x, y);\n' ' })();\n' '</script></div>\n' ' \n' ' </div>\n' '\n' '<div id="block-googleanalytics3" class="block ' 'block-block-content ' 'block-block-contenta12aefcf-1981-421c-8f8e-5db73859a78f ' 'position-relative">\n' ' \n' ' \n' ' \n' '\n' ' <div class="field-container"><!-- Global site tag ' '(gtag.js) - Google Analytics -->\n' '<script async ' 'src="https://www.googletagmanager.com/gtag/js?id=UA-10387228-1"></script>\n' '<script>\n' ' window.dataLayer = window.dataLayer || [];\n' ' function gtag(){dataLayer.push(arguments);}\n' " gtag('js', new Date());\n" '\n' " gtag('config', 'UA-10387228-1');\n" '</script></div>\n' ' \n' ' </div>\n' '\n' ' </div>\n' '\n' ' </main>'}
    • WARNING+

    • error_logs
      134 in total

      2026-06-16 06:00:41 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:41 [darien_library] 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-06-16 06:00:42 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:42 [darien_library] 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-06-16 06:00:42 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:42 [darien_library] 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-06-16 06:00:42 [darien_library] 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-06-16 06:00:42 [darien_library] 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-06-16 06:00:42 [darien_library] 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-06-16 06:00:43 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:43 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:43 [darien_library] 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-06-16 06:00:43 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:43 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:43 [darien_library] 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-06-16 06:00:43 [darien_library] 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-06-16 06:00:43 [darien_library] 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-06-16 06:00:43 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:44 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:44 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:44 [darien_library] 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-06-16 06:00:44 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:44 [darien_library] 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-06-16 06:00:44 [darien_library] 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-06-16 06:00:44 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:45 [darien_library] 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-06-16 06:00:45 [darien_library] 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-06-16 06:00:45 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:45 [darien_library] 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-06-16 06:00:45 [darien_library] 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-06-16 06:00:45 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:45 [darien_library] 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-06-16 06:00:45 [darien_library] 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-06-16 06:00:45 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:46 [darien_library] 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-06-16 06:00:46 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:46 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:46 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:46 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:46 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:47 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:47 [darien_library] 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-06-16 06:00:47 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:47 [darien_library] 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-06-16 06:00:48 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:48 [darien_library] 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-06-16 06:00:54 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:55 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:55 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:55 [darien_library] 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-06-16 06:00:55 [darien_library] 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-06-16 06:00:55 [darien_library] 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-06-16 06:00:55 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:55 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:55 [darien_library] 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-06-16 06:00:55 [darien_library] 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-06-16 06:00:56 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:56 [darien_library] 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-06-16 06:00:56 [darien_library] 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-06-16 06:00:56 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:56 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:57 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:57 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:57 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:57 [darien_library] 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-06-16 06:00:57 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:57 [darien_library] 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-06-16 06:00:58 [darien_library] 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-06-16 06:00:58 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:58 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:58 [darien_library] 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-06-16 06:00:58 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:58 [darien_library] 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-06-16 06:00:58 [darien_library] 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-06-16 06:00:59 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:00 [darien_library] 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-06-16 06:01:00 [darien_library] 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-06-16 06:01:00 [darien_library] 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-06-16 06:01:00 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:00 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:00 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:01 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:01 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:02 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:02 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:02 [darien_library] 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-06-16 06:01:03 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:03 [darien_library] 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-06-16 06:01:03 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:03 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:04 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:04 [darien_library] 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-06-16 06:01:05 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:05 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:05 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:05 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:06 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:06 [darien_library] 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-06-16 06:01:06 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:06 [darien_library] 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-06-16 06:01:06 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:07 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:07 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:07 [darien_library] 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-06-16 06:01:07 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:07 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:07 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:08 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:08 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:08 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:08 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:08 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:08 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:09 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:09 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:09 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:10 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:10 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:10 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:10 [darien_library] 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-06-16 06:01:10 [darien_library] 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-06-16 06:01:10 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:11 [darien_library] 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-06-16 06:01:11 [darien_library] 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-06-16 06:01:11 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:11 [darien_library] 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-06-16 06:01:11 [darien_library] 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-06-16 06:01:11 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:12 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:01:12 [darien_library] 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-06-16 06:01:12 [darien_library] 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-06-16 06:01:12 [darien_library] 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-06-16 06:01:12 [darien_library] 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-06-16 06:01:12 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
    • warning_logs
      2 in total

      2026-06-16 06:00:39 [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 06:00:39 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.darien_library.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(
      

      INFO

      DEBUG

    • scrapy_version

      2.14.1
    • telnet_console

      127.0.0.1:6023
    • telnet_password

      2644161d6bc9f736
    • latest_crawl

      2026-06-16 06:01:11 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.darienlibrary.org/event/tech-help-tuesday-110435> (referer: https://www.darienlibrary.org/events/upcoming)
    • latest_stat

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

      2026-06-16 06:01:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://www.darienlibrary.org/event/tech-help-tuesday-110435>
    • latest_item

      {'event_url': 'https://www.darienlibrary.org/event/tech-help-tuesday-110435',
       'platform': 'Darien Library',
       'platform_hash': 'a5eecd9001dc7446b4cffaec033e21f0',
       'raw_body': '<main role="main" class="main-container container">\n'
                   '    <a id="main-content" tabindex="-1"></a>\n'
                   '\n'
                   '      <div class="content-region">\n'
                   '    \n'
                   '<div class="views-element-container block block-views '
                   'block-views-blocklc-announcements-lc-announcements-block '
                   'position-relative" '
                   'id="block-views-block-lc-announcements-lc-announcements-block">\n'
                   '  \n'
                   '    \n'
                   '      <div>\n'
                   '\n'
                   '\n'
                   '\n'
                   '  \n'
                   '<div class="lc-announcements view view-lc-announcements '
                   'view-id-lc_announcements view-display-id-lc_announcements_block '
                   'js-view-dom-id-afef28ae871197912cb1f55317d499e8e7285bc85f0ce4021ef503ea32ce895f '
                   'row">\n'
                   '  <div class="col-md-12">\n'
                   '    \n'
                   '        \n'
                   '      </div>\n'
                   '    <div class="content-container py-0 col-md-12">\n'
                   '    \n'
                   '          <div class="view-content">\n'
                   '            <div class="views-row">\n'
                   '\n'
                   '  <div class="announcement announcement--yellow-alert">\n'
                   '  <div class="announcement__content">\n'
                   '    <h4 class="announcement__title">\n'
                   '<span>Closed on Juneteenth</span>\n'
                   '</h4>\n'
                   '\n'
                   '    \n'
                   '\n'
                   '            <div class="field-container"><p>The Library is '
                   'closed on Friday, June 19th. <a href="/digital">We\'re always '
                   'open online at Digital Darien &gt;&gt;</a></p></div>\n'
                   '      \n'
                   '\n'
                   '      </div>\n'
                   '</div>\n'
                   '</div>\n'
                   '\n'
                   '      </div>\n'
                   '    \n'
                   '                      </div>\n'
                   '</div>\n'
                   '</div>\n'
                   '\n'
                   '  </div>\n'
                   '<div data-drupal-messages-fallback class="hidden"></div>\n'
                   '\n'
                   '<div id="block-website-theme-breadcrumbs" class="block '
                   'block-system block-system-breadcrumb-block position-relative">\n'
                   '  \n'
                   '    \n'
                   '        <nav role="navigation" aria-label="Breadcrumb">\n'
                   '    <ol class="breadcrumb">\n'
                   '          <li class="breadcrumb-item">\n'
                   '        <a href="/">Home</a>\n'
                   '      </li>\n'
                   '        </ol>\n'
                   '  </nav>\n'
                   '\n'
                   '  </div>\n'
                   '\n'
                   '<div id="block-website-theme-page-title" class="block block-core '
                   'block-page-title-block position-relative">\n'
                   '  \n'
                   '    \n'
                   '      \n'
                   '  <h1 class="mb-4">\n'
                   '<span>Tech Help Tuesday</span>\n'
                   '</h1>\n'
                   '\n'
                   '\n'
                   '  </div>\n'
                   '\n'
                   '<div id="block-website-theme-content" class="block block-system '
                   'block-system-main-block position-relative">\n'
                   '  \n'
                   '    \n'
                   '      \n'
                   '\n'
                   '\n'
                   '\n'
                   '  \n'
                   '\n'
                   '\n'
                   '<article class="lc-event lc-event--full node node--type-lc-event '
                   'node--promoted node--view-mode-full">\n'
                   '\n'
                   '  \n'
                   '    \n'
                   '\n'
                   '      <div class="lc-event__menu-tasks"><div '
                   'class="lc-menu-tasks">  <h2 class="visually-hidden">Primary '
                   'tabs</h2>\n'
                   '  <ul class="list-inline"><li class="list-inline-item"><a '
                   'href="/events/upcoming" class="button button--primary btn-sm" '
                   'data-drupal-link-system-path="events/upcoming">Upcoming</a></li>\n'
                   '<li class="list-inline-item"><a href="/events/list" '
                   'class="button button--primary btn-sm" '
                   'data-drupal-link-system-path="events/list">List</a></li>\n'
                   '<li class="list-inline-item"><a href="/events/month/2026/06" '
                   'class="button button--primary btn-sm" '
                   'data-drupal-link-system-path="events/month/2026/06">Month</a></li>\n'
                   '<li class="list-inline-item"><a href="/events/week/2026/06/16" '
                   'class="button button--primary btn-sm" '
                   'data-drupal-link-system-path="events/week/2026/06/16">Week</a></li>\n'
                   '<li class="list-inline-item"><a href="/events/day/2026/06/16" '
                   'class="button button--primary btn-sm" '
                   'data-drupal-link-system-path="events/day/2026/06/16">Day</a></li>\n'
                   '</ul>\n'
                   '</div>\n'
                   '</div>\n'
                   '  \n'
                   '  <div class="node__content lc-event-wrapper">\n'
                   '    <aside class="lc-event-sidebar lc-event__sidebar">\n'
                   '      <div class="lc-print-row">\n'
                   '        <div class="lc-print-column">\n'
                   '          <div class="lc-event-details lc-event-section">\n'
                   '              <div class="lc-date-icon" aria-hidden="true">\n'
                   '          <span class="lc-date-icon__item '
                   'lc-date-icon__item--month">\n'
                   '        Jun\n'
                   '      </span>\n'
                   '    \n'
                   '          <span class="lc-date-icon__item '
                   'lc-date-icon__item--day">\n'
                   '        16\n'
                   '      </span>\n'
                   '    \n'
                   '    <span class="lc-date-icon__item lc-date-icon__item--year">\n'
                   '      2026\n'
                   '    </span>\n'
                   '\n'
                   '          <span class="lc-date-icon__item '
                   'lc-date-icon__item--day-name">\n'
                   '        Tue\n'
                   '      </span>\n'
                   '      </div>\n'
                   '\n'
                   '\n'
                   '            <div class="lc-event-info">\n'
                   '                              <h3 class="lc-event-subtitle '
                   'lc-event-branch">\n'
                   '                  Darien Library\n'
                   '                </h3>\n'
                   '              \n'
                   '                              <h3 class="lc-event-subtitle '
                   'lc-event-room">\n'
                   '                  Research Room\n'
                   '                </h3>\n'
                   '              \n'
                   '              <div class="lc-event-info-item '
                   'lc-event-info-item--date">\n'
                   '                                  Tuesday, June 16, 2026\n'
                   '                              </div>\n'
                   '\n'
                   '                    <div class="lc-event-info-item '
                   'lc-event-info-item--time">\n'
                   '      2:00pm–3:00pm\n'
                   '    </div>\n'
                   '  \n'
                   '\n'
                   '              \n'
                   '                          </div>\n'
                   '          </div>\n'
                   '\n'
                   '                                <div class="lc-repeating-dates '
                   'lc-event-section">\n'
                   '              <details class="lc-repeating-dates__details">\n'
                   '                <summary class="lc-repeating-dates__toggle">\n'
                   '                  Also Occurs On <span '
                   'class="lc-repeating-dates__toggle-icon" '
                   'role="presentation">:</span>\n'
                   '                </summary>\n'
                   '\n'
                   '                <div class="lc-repeating-dates__wrapper">\n'
                   '                  <ul class="lc-repeating-dates__list">\n'
                   '                                          \n'
                   '                      \n'
                   '                      \n'
                   '                      \n'
                   '                      <li class="lc-repeating-dates__item">\n'
                   '                        <a '
                   'href="/event/tech-help-tuesday-110430" '
                   'class="lc-repeating-dates__link">\n'
                   '                          05/12/26\n'
                   '                        </a>\n'
                   '                      </li>\n'
                   '                                          \n'
                   '                      \n'
                   '                      \n'
                   '                      \n'
                   '                      <li class="lc-repeating-dates__item">\n'
                   '                        <a '
                   'href="/event/tech-help-tuesday-110431" '
                   'class="lc-repeating-dates__link">\n'
                   '                          05/19/26\n'
                   '                        </a>\n'
                   '                      </li>\n'
                   '                                          \n'
                   '                      \n'
                   '                      \n'
                   '                      \n'
                   '                      <li class="lc-repeating-dates__item">\n'
                   '                        <a '
                   'href="/event/tech-help-tuesday-110432" '
                   'class="lc-repeating-dates__link">\n'
                   '                          05/26/26\n'
                   '                        </a>\n'
                   '                      </li>\n'
                   '                                          \n'
                   '                      \n'
                   '                      \n'
                   '                      \n'
                   '                      <li class="lc-repeating-dates__item">\n'
                   '                        <a '
                   'href="/event/tech-help-tuesday-110433" '
                   'class="lc-repeating-dates__link">\n'
                   '                          06/02/26\n'
                   '                        </a>\n'
                   '                      </li>\n'
                   '                                          \n'
                   '                      \n'
                   '                      \n'
                   '                      \n'
                   '                      <li class="lc-repeating-dates__item">\n'
                   '                        <a '
                   'href="/event/tech-help-tuesday-110434" '
                   'class="lc-repeating-dates__link">\n'
                   '                          06/09/26\n'
                   '                        </a>\n'
                   '                      </li>\n'
                   '                                          \n'
                   '                      \n'
                   '                      \n'
                   '                                                                    \n'
                   '                      <li class="lc-repeating-dates__item">\n'
                   '                        <a '
                   'href="/event/tech-help-tuesday-110435" '
                   'class="lc-repeating-dates__link active">\n'
                   '                          06/16/26\n'
                   '                        </a>\n'
                   '                      </li>\n'
                   '                                          \n'
                   '                      \n'
                   '                      \n'
                   '                      \n'
                   '                      <li class="lc-repeating-dates__item">\n'
                   '                        <a '
                   'href="/event/tech-help-tuesday-110436" '
                   'class="lc-repeating-dates__link">\n'
                   '                          06/23/26\n'
                   '                        </a>\n'
                   '                      </li>\n'
                   '                                          \n'
                   '                      \n'
                   '                      \n'
                   '                      \n'
                   '                      <li class="lc-repeating-dates__item">\n'
                   '                        <a '
                   'href="/event/tech-help-tuesday-110437" '
                   'class="lc-repeating-dates__link">\n'
                   '                          06/30/26\n'
                   '                        </a>\n'
                   '                      </li>\n'
                   '                                      </ul>\n'
                   '                </div>\n'
                   '              </details>\n'
                   '            </div>\n'
                   '                  </div>\n'
                   '                \n'
                   '              </div>\n'
                   '    </aside>\n'
                   '    <section class="lc-event-content lc-event__content">\n'
                   '              <div class="lc-event-share-event">\n'
                   '\n'
                   '\n'
                   '<div class="lc-event-actions lc-event-actions--share-event">\n'
                   '  <ul class="lc-event-actions__list">\n'
                   '              <li class="lc-event-actions__item">\n'
                   '        \n'
                   '        <a href="/node/110435/reminder_form" class="button '
                   'button--primary lc-event-action-link use-ajax" '
                   'data-dialog-options=\'{"title":"Setup '
                   'Reminder","width":"auto"}\' data-dialog-type="modal" '
                   'title="Remind Me" data-toggle="tooltip">\n'
                   '          <span class="lc-event-actions__icon '
                   'lc-event-actions__icon--reminder"></span>\n'
                   '          <span class="lc-event-actions__text">Remind Me</span>\n'
                   '        </a>\n'
                   '      </li>\n'
                   '        \n'
                   '        <li class="lc-event-actions__item">\n'
                   '      \n'
                   '      <a href="/node/110435/add_to_calendar" class="button '
                   'button--primary lc-event-action-link use-ajax" '
                   'data-dialog-options=\'{"title":"Add This Event To Your '
                   'Calendar","width":"auto"}\' data-dialog-type="modal" title="Add '
                   'To My Calendar" data-toggle="tooltip">\n'
                   '        <span class="lc-event-actions__icon '
                   'lc-event-actions__icon--calendar"></span>\n'
                   '        <span class="lc-event-actions__text">Add To My '
                   'Calendar</span>\n'
                   '      </a>\n'
                   '    </li>\n'
                   '   \n'
                   '        <li class="lc-event-actions__item">\n'
                   '      \n'
                   '      <a href="#" class="button button--primary '
                   'lc-event-action-link" onclick="window.print()" title="Print this '
                   'event" data-toggle="tooltip">\n'
                   '        <span class="lc-event-actions__icon '
                   'lc-event-actions__icon--print"></span>\n'
                   '        <span class="lc-event-actions__text">Print</span>\n'
                   '      </a>\n'
                   '    </li>\n'
                   '    \n'
                   '              <li class="lc-event-actions__item">\n'
                   '        \n'
                   '        <a href="/node/110435/share_this_event" class="button '
                   'button--primary lc-event-action-link use-ajax" '
                   'data-dialog-options=\'{"dialogClass":"white-popup","title":"Share '
                   'This Event","width":"auto"}\' data-dialog-type="modal" '
                   'title="Share this event" data-toggle="tooltip">\n'
                   '          <span class="lc-event-actions__icon '
                   'lc-event-actions__icon--share"></span>\n'
                   '          <span class="lc-event-actions__text">Share</span>\n'
                   '        </a>\n'
                   '      </li>\n'
                   '        \n'
                   '              </ul>\n'
                   '</div>\n'
                   '</div>\n'
                   '      \n'
                   '              <div class="lc-event__categories '
                   'lc-event__program-types">\n'
                   '          <h3 class="lc-event-label lc-d-inline">Program '
                   'Type:</h3>\n'
                   '                      <span><a '
                   'href="/events/upcoming?program_types%5B12%5D=12">Technology</a></span>\n'
                   '                  </div>\n'
                   '      \n'
                   '              <div class="lc-event__categories '
                   'lc-event__age-groups">\n'
                   '          <h3 class="lc-event-label lc-d-inline">\n'
                   '            Age Group:\n'
                   '          </h3>\n'
                   '\n'
                   '                                    <span><a '
                   'href="/events/upcoming?age_groups%5B4%5D=4">Adults</a></span>\n'
                   '                              </div>\n'
                   '      \n'
                   '      \n'
                   '          \n'
                   '  \n'
                   '\n'
                   '      <div></div>\n'
                   '\n'
                   '\n'
                   '            \n'
                   '              \n'
                   '                                  \n'
                   '        <h2 class="lc-event-subtitle visually-hidden">Program '
                   'Description</h2>\n'
                   '      \n'
                   '                  \n'
                   '                    <h3 class="lc-event-subtitle">Event '
                   'Details</h3>\n'
                   '      \n'
                   '                    \n'
                   '            \n'
                   '            \n'
                   '                    \n'
                   '\n'
                   '            <div class="field-container"><p>Drop in during this '
                   'weekly open session for technology related help on using your '
                   'cellphone, tablet, or computer.</p><p>First come, first served '
                   'and is best suited for quick help '
                   'questions.</p><h3><strong>Topics can '
                   'include:</strong></h3><ul><li>Computer basics, internet, and '
                   'email</li><li>Using a computer, tablet or cell '
                   'phone</li><li>Accessing digital e-Books and '
                   "audiobooks</li><li>Utilizing Darien Library's resources and "
                   'databases</li><li>Microsoft Word, PowerPoint, '
                   'Excel</li><li>Google apps</li><li>Research tips using '
                   'databases</li><li>Genealogy</li></ul><p>For more in-depth tech '
                   'help, a one-on-one tech help appointment is recommended. Call\xa0'
                   '<a href="tel:2036695238"><strong>203-669-5238</strong></a>\xa0or '
                   '<a '
                   'href="https://www.darienlibrary.org/services/book-librarian"><strong>schedule '
                   'a Book-a Librarian appointment.</strong></a></p></div>\n'
                   '      \n'
                   '      \n'
                   '                  \n'
                   '                    \n'
                   '        \n'
                   '            \n'
                   '      <div></div>\n'
                   '\n'
                   '    </section>\n'
                   '    <aside class="lc-event-sidebar">\n'
                   '      <div class="lc-event-location">\n'
                   '                  <h2 class="lc-event-subtitle">Location '
                   'Details</h2>\n'
                   '        \n'
                   '                  <div class="lc-event-location-map '
                   'lc-event-section"><iframe allowfullscreen frameborder="0" '
                   'height="300" '
                   'src="https://www.google.com/maps?output=embed&amp;q=1441+Post+Road%2C+Darien%2C+CT+06820%2C+United+States" '
                   'style="width: 100%;" title="Darien Library on Google Maps" '
                   'width="600"></iframe>\n'
                   '</div>\n'
                   '        \n'
                   '        \n'
                   '        <div class="lc-event-location-address '
                   'lc-event-section">\n'
                   '                      <p class="lc-font-weight-bold">Darien '
                   'Library</p>\n'
                   '\n'
                   '            <div class="lc-address-line '
                   'lc-address-line--first">\n'
                   '              1441 Post Road\n'
                   '                          </div>\n'
                   '\n'
                   '            <div class="lc-address-line '
                   'lc-address-line--second">\n'
                   '              Darien,\n'
                   '              CT\n'
                   '              06820\n'
                   '            </div>\n'
                   '\n'
                   '                          <div '
                   'class="lc-event-location__phone">\n'
                   '                <a href="tel:2036551234">\n'
                   '                  (203) 655-1234\n'
                   '                </a>\n'
                   '              </div>\n'
                   '            \n'
                   '            <div class="lc-branch-select-map-link">\n'
                   '              See map:\n'
                   '              <a '
                   'href="http://maps.google.com/?q=1441%20Post%20Road,+Darien,+CT,+06820">\n'
                   '                Google Maps              </a>\n'
                   '            </div>\n'
                   '          \n'
                   '          \n'
                   '                  </div>\n'
                   '\n'
                   '        \n'
                   '                \n'
                   '                          <div '
                   'class="lc-event-address-container">\n'
                   '            <h2 class="lc-event-subtitle">Contact Info</h2>\n'
                   '\n'
                   '                          <div class="lc-event-info-item '
                   'lc-event-contact-name">\n'
                   '                <span class="lc-font-weight-bold">\n'
                   '                  Name:                </span>\n'
                   '\n'
                   '                Mary-Beth Mason\n'
                   '              </div>\n'
                   '            \n'
                   '                          <div class="lc-event-info-item '
                   'lc-event-contact-email">\n'
                   '                <span class="lc-font-weight-bold">\n'
                   '                  Email:\n'
                   '                </span>\n'
                   '\n'
                   '                <a href="mailto:mmason@darienlibrary.org">\n'
                   '                  mmason@darienlibrary.org\n'
                   '                </a>\n'
                   '              </div>\n'
                   '            \n'
                   '            \n'
                   '                      </div>\n'
                   '        \n'
                   '        \n'
                   '              </div>\n'
                   '    </aside>\n'
                   '  </div>\n'
                   '\n'
                   '  <div></div>\n'
                   '\n'
                   '\n'
                   '</article>\n'
                   '\n'
                   '  </div>\n'
                   '\n'
                   '<div id="block-chatwidget" class="block block-block-content '
                   'block-block-content63a310d3-960f-4513-8d41-03110820bfc1 '
                   'position-relative">\n'
                   '  \n'
                   '    \n'
                   '      \n'
                   '\n'
                   '            <div class="field-container"><div '
                   'class="needs-js">chat loading...</div>\n'
                   '<script type="text/javascript">\n'
                   '  (function() {\n'
                   '    var x = document.createElement("script"); x.type = '
                   '"text/javascript"; x.async = true;\n'
                   '    x.src = (document.location.protocol === "https:" ? '
                   '"https://" : "http://") + '
                   '"libraryh3lp.com/js/libraryh3lp.js?18222";\n'
                   '    var y = document.getElementsByTagName("script")[0]; '
                   'y.parentNode.insertBefore(x, y);\n'
                   '  })();\n'
                   '</script></div>\n'
                   '      \n'
                   '  </div>\n'
                   '\n'
                   '<div id="block-googleanalytics3" class="block '
                   'block-block-content '
                   'block-block-contenta12aefcf-1981-421c-8f8e-5db73859a78f '
                   'position-relative">\n'
                   '  \n'
                   '    \n'
                   '      \n'
                   '\n'
                   '            <div class="field-container"><!-- Global site tag '
                   '(gtag.js) - Google Analytics -->\n'
                   '<script async '
                   'src="https://www.googletagmanager.com/gtag/js?id=UA-10387228-1"></script>\n'
                   '<script>\n'
                   '  window.dataLayer = window.dataLayer || [];\n'
                   '  function gtag(){dataLayer.push(arguments);}\n'
                   "  gtag('js', new Date());\n"
                   '\n'
                   "  gtag('config', 'UA-10387228-1');\n"
                   '</script></div>\n'
                   '      \n'
                   '  </div>\n'
                   '\n'
                   '  </div>\n'
                   '\n'
                   '  </main>'}
    • Head

      2026-06-16 06:00:38 [scrapy.utils.log] INFO: Scrapy 2.14.1 started (bot: event_scrapers)
      2026-06-16 06:00:38 [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 06:00:38 [scrapy.crawler] DEBUG: Using AsyncCrawlerProcess
      2026-06-16 06:00:38 [asyncio] DEBUG: Using selector: EpollSelector
      2026-06-16 06:00:38 [scrapy.addons] INFO: Enabled addons:
      []
      2026-06-16 06:00:39 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor
      2026-06-16 06:00:39 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop
      2026-06-16 06:00:39 [scrapy.extensions.telnet] INFO: Telnet Password: 2644161d6bc9f736
      2026-06-16 06:00:39 [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 06:00:39 [scrapy.crawler] INFO: Overridden settings:
      {'BOT_NAME': 'event_scrapers',
       'FEED_EXPORT_ENCODING': 'utf-8',
       'FEED_URI_PARAMS': <function _feed_uri_params at 0x73d4d07ec540>,
       'LOG_FILE': '/root/event-list-scraping/logs/event_scrapers/darien_library/ed59dd02693711f1b9080050565fa5d9.log',
       'NEWSPIDER_MODULE': 'event_scrapers.spiders',
       'REQUEST_FINGERPRINTER_CLASS': 'scrapy_zyte_api.ScrapyZyteAPIRequestFingerprinter',
       'SPIDER_MODULES': ['event_scrapers.spiders']}
      2026-06-16 06:00:39 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
      2026-06-16 06:00:39 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
      2026-06-16 06:00:39 [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 06:00:39 [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 06:00:39 [scrapy.middleware] INFO: Enabled item pipelines:
      ['event_scrapers.pipelines.EventScrapersPipeline']
      2026-06-16 06:00:39 [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 06:00:39 [scrapy.core.engine] INFO: Spider opened
      2026-06-16 06:00:39 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.darien_library.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-06-16 06:00:39 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
      2026-06-16 06:00:39 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
      2026-06-16 06:00:40 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.darienlibrary.org/events/upcoming> (referer: None)
      2026-06-16 06:00:41 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.darienlibrary.org/events/upcoming?page=1> (referer: https://www.darienlibrary.org/events/upcoming)
      2026-06-16 06:00:41 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.darienlibrary.org/event/preschool-movie-matinee-pixar-shorts-i-114254> (referer: https://www.darienlibrary.org/events/upcoming)
      2026-06-16 06:00:41 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.darienlibrary.org/event/cartooning-rick-stromoski-113839> (referer: https://www.darienlibrary.org/events/upcoming)
      2026-06-16 06:00:41 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.darienlibrary.org/event/play-mah-jongg-109688> (referer: https://www.darienlibrary.org/events/upcoming)
      2026-06-16 06:00:41 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): 144.91.120.141:80
      2026-06-16 06:00:41 [urllib3.connectionpool] DEBUG: http://144.91.120.141:80 "POST /api/v1/raw-events/ HTTP/1.1" 400 68
      2026-06-16 06:00:41 [darien_library] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 06:00:41 [scrapy.core.scraper] DEBUG: Scraped from <200 https://www.darienlibrary.org/event/preschool-movie-matinee-pixar-shorts-i-114254>
      {'event_url': 'https://www.darienlibrary.org/event/preschool-movie-matinee-pixar-shorts-i-114254',
       'platform': 'Darien Library',
       'platform_hash': 'a5eecd9001dc7446b4cffaec033e21f0',
       'raw_body': '<main role="main" class="main-container container">\n'
                   '    <a id="main-content" tabindex="-1"></a>\n'
                   '\n'
                   '      <div class="content-region">\n'
                   '    \n'
                   '<div class="views-element-container block block-views '
                   'block-views-blocklc-announcements-lc-announcements-block '
                   'position-relative" '
                   'id="block-views-block-lc-announcements-lc-announcements-block">\n'
                   '  \n'
                   '    \n'
                   '      <div>\n'
                   '\n'
                   '\n'
                   '\n'
                   '  \n'
                   '<div class="lc-announcements view view-lc-announcements '
                   'view-id-lc_announcements view-display-id-lc_announcements_block '
                   'js-view-dom-id-1fecae4a8feac3147f21da9ccde84e0eb9db7432af2019e0ccd4a046c5aa66d1 '
    • Tail

                   'Details</h3>\n'
                   '      \n'
                   '                    \n'
                   '            \n'
                   '            \n'
                   '                    \n'
                   '\n'
                   '            <div class="field-container"><p>Drop in during this '
                   'weekly open session for technology related help on using your '
                   'cellphone, tablet, or computer.</p><p>First come, first served '
                   'and is best suited for quick help '
                   'questions.</p><h3><strong>Topics can '
                   'include:</strong></h3><ul><li>Computer basics, internet, and '
                   'email</li><li>Using a computer, tablet or cell '
                   'phone</li><li>Accessing digital e-Books and '
                   "audiobooks</li><li>Utilizing Darien Library's resources and "
                   'databases</li><li>Microsoft Word, PowerPoint, '
                   'Excel</li><li>Google apps</li><li>Research tips using '
                   'databases</li><li>Genealogy</li></ul><p>For more in-depth tech '
                   'help, a one-on-one tech help appointment is recommended. Call\xa0'
                   '<a href="tel:2036695238"><strong>203-669-5238</strong></a>\xa0or '
                   '<a '
                   'href="https://www.darienlibrary.org/services/book-librarian"><strong>schedule '
                   'a Book-a Librarian appointment.</strong></a></p></div>\n'
                   '      \n'
                   '      \n'
                   '                  \n'
                   '                    \n'
                   '        \n'
                   '            \n'
                   '      <div></div>\n'
                   '\n'
                   '    </section>\n'
                   '    <aside class="lc-event-sidebar">\n'
                   '      <div class="lc-event-location">\n'
                   '                  <h2 class="lc-event-subtitle">Location '
                   'Details</h2>\n'
                   '        \n'
                   '                  <div class="lc-event-location-map '
                   'lc-event-section"><iframe allowfullscreen frameborder="0" '
                   'height="300" '
                   'src="https://www.google.com/maps?output=embed&amp;q=1441+Post+Road%2C+Darien%2C+CT+06820%2C+United+States" '
                   'style="width: 100%;" title="Darien Library on Google Maps" '
                   'width="600"></iframe>\n'
                   '</div>\n'
                   '        \n'
                   '        \n'
                   '        <div class="lc-event-location-address '
                   'lc-event-section">\n'
                   '                      <p class="lc-font-weight-bold">Darien '
                   'Library</p>\n'
                   '\n'
                   '            <div class="lc-address-line '
                   'lc-address-line--first">\n'
                   '              1441 Post Road\n'
                   '                          </div>\n'
                   '\n'
                   '            <div class="lc-address-line '
                   'lc-address-line--second">\n'
                   '              Darien,\n'
                   '              CT\n'
                   '              06820\n'
                   '            </div>\n'
                   '\n'
                   '                          <div '
                   'class="lc-event-location__phone">\n'
                   '                <a href="tel:2036551234">\n'
                   '                  (203) 655-1234\n'
                   '                </a>\n'
                   '              </div>\n'
                   '            \n'
                   '            <div class="lc-branch-select-map-link">\n'
                   '              See map:\n'
                   '              <a '
                   'href="http://maps.google.com/?q=1441%20Post%20Road,+Darien,+CT,+06820">\n'
                   '                Google Maps              </a>\n'
                   '            </div>\n'
                   '          \n'
                   '          \n'
                   '                  </div>\n'
                   '\n'
                   '        \n'
                   '                \n'
                   '                          <div '
                   'class="lc-event-address-container">\n'
                   '            <h2 class="lc-event-subtitle">Contact Info</h2>\n'
                   '\n'
                   '                          <div class="lc-event-info-item '
                   'lc-event-contact-name">\n'
                   '                <span class="lc-font-weight-bold">\n'
                   '                  Name:                </span>\n'
                   '\n'
                   '                Mary-Beth Mason\n'
                   '              </div>\n'
                   '            \n'
                   '                          <div class="lc-event-info-item '
                   'lc-event-contact-email">\n'
                   '                <span class="lc-font-weight-bold">\n'
                   '                  Email:\n'
                   '                </span>\n'
                   '\n'
                   '                <a href="mailto:mmason@darienlibrary.org">\n'
                   '                  mmason@darienlibrary.org\n'
                   '                </a>\n'
                   '              </div>\n'
                   '            \n'
                   '            \n'
                   '                      </div>\n'
                   '        \n'
                   '        \n'
                   '              </div>\n'
                   '    </aside>\n'
                   '  </div>\n'
                   '\n'
                   '  <div></div>\n'
                   '\n'
                   '\n'
                   '</article>\n'
                   '\n'
                   '  </div>\n'
                   '\n'
                   '<div id="block-chatwidget" class="block block-block-content '
                   'block-block-content63a310d3-960f-4513-8d41-03110820bfc1 '
                   'position-relative">\n'
                   '  \n'
                   '    \n'
                   '      \n'
                   '\n'
                   '            <div class="field-container"><div '
                   'class="needs-js">chat loading...</div>\n'
                   '<script type="text/javascript">\n'
                   '  (function() {\n'
                   '    var x = document.createElement("script"); x.type = '
                   '"text/javascript"; x.async = true;\n'
                   '    x.src = (document.location.protocol === "https:" ? '
                   '"https://" : "http://") + '
                   '"libraryh3lp.com/js/libraryh3lp.js?18222";\n'
                   '    var y = document.getElementsByTagName("script")[0]; '
                   'y.parentNode.insertBefore(x, y);\n'
                   '  })();\n'
                   '</script></div>\n'
                   '      \n'
                   '  </div>\n'
                   '\n'
                   '<div id="block-googleanalytics3" class="block '
                   'block-block-content '
                   'block-block-contenta12aefcf-1981-421c-8f8e-5db73859a78f '
                   'position-relative">\n'
                   '  \n'
                   '    \n'
                   '      \n'
                   '\n'
                   '            <div class="field-container"><!-- Global site tag '
                   '(gtag.js) - Google Analytics -->\n'
                   '<script async '
                   'src="https://www.googletagmanager.com/gtag/js?id=UA-10387228-1"></script>\n'
                   '<script>\n'
                   '  window.dataLayer = window.dataLayer || [];\n'
                   '  function gtag(){dataLayer.push(arguments);}\n'
                   "  gtag('js', new Date());\n"
                   '\n'
                   "  gtag('config', 'UA-10387228-1');\n"
                   '</script></div>\n'
                   '      \n'
                   '  </div>\n'
                   '\n'
                   '  </div>\n'
                   '\n'
                   '  </main>'}
      2026-06-16 06:01:12 [scrapy.core.engine] INFO: Closing spider (finished)
      2026-06-16 06:01:12 [scrapy.extensions.feedexport] INFO: Stored csv feed (182 items) in: output/2026/06/16/darien_library.csv
      2026-06-16 06:01:12 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
      {'downloader/request_bytes': 63368,
       'downloader/request_count': 192,
       'downloader/request_method_count/GET': 192,
       'downloader/response_bytes': 3875462,
       'downloader/response_count': 192,
       'downloader/response_status_count/200': 192,
       'elapsed_time_seconds': 33.642526,
       'feedexport/success_count/FileFeedStorage': 1,
       'finish_reason': 'finished',
       'finish_time': datetime.datetime(2026, 6, 16, 4, 1, 12, 821746, tzinfo=datetime.timezone.utc),
       'httpcompression/response_bytes': 17963553,
       'httpcompression/response_count': 192,
       'item_scraped_count': 182,
       'items_per_minute': 330.9090909090909,
       'log_count/DEBUG': 738,
       'log_count/ERROR': 134,
       'log_count/INFO': 3,
       'memusage/max': 93294592,
       'memusage/startup': 93294592,
       'request_depth_max': 8,
       'response_received_count': 192,
       'responses_per_minute': 349.09090909090907,
       'scheduler/dequeued': 192,
       'scheduler/dequeued/memory': 192,
       'scheduler/enqueued': 192,
       'scheduler/enqueued/memory': 192,
       'start_time': datetime.datetime(2026, 6, 16, 4, 0, 39, 179220, tzinfo=datetime.timezone.utc)}
      2026-06-16 06:01:12 [scrapy.core.engine] INFO: Spider closed (finished)
    • Log

      /1/log/utf8/event_scrapers/darien_library/ed59dd02693711f1b9080050565fa5d9/?job_finished=True

    • Source

      http://127.0.0.1:6800/logs/event_scrapers/darien_library/ed59dd02693711f1b9080050565fa5d9.log

  • sourcelog
    last_update_time2026-06-16 06:01:12
    last_update_timestamp1781582472
    downloader/request_bytes63368
    downloader/request_count192
    downloader/request_method_count/GET192
    downloader/response_bytes3875462
    downloader/response_count192
    downloader/response_status_count/200192
    elapsed_time_seconds33.642526
    feedexport/success_count/FileFeedStorage1
    finish_reasonfinished
    finish_timedatetime.datetime(2026, 6, 16, 4, 1, 12, 821746, tzinfo=datetime.timezone.utc)
    httpcompression/response_bytes17963553
    httpcompression/response_count192
    item_scraped_count182
    items_per_minute330.9090909090909
    log_count/DEBUG738
    log_count/ERROR134
    log_count/INFO3
    memusage/max93294592
    memusage/startup93294592
    request_depth_max8
    response_received_count192
    responses_per_minute349.09090909090907
    scheduler/dequeued192
    scheduler/dequeued/memory192
    scheduler/enqueued192
    scheduler/enqueued/memory192
    start_timedatetime.datetime(2026, 6, 16, 4, 0, 39, 179220, tzinfo=datetime.timezone.utc)