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

  • Log analysis
  • Log categorization
  • Progress visualization
  • View log
  • Crawler.stats
  • projectevent_scrapers
    spidervisit_norwalk
    job0bc13a2e699711f1bbc60050565fa5d9
    first_log_time2026-06-16 17:21:34
    latest_log_time2026-06-16 17:23:18
    runtime0:01:44
    crawled_pages 71
    scraped_items 57
    shutdown_reasonN/A
    finish_reasonfinished
    log_critical_count0
    log_error_count57
    log_warning_count1
    log_redirect_count0
    log_retry_count0
    log_ignore_count0
    latest_crawl
    latest_scrape
    latest_log
    current_time
    latest_item{'event_url': 'https://www.visitnorwalk.org/events-in-norwalk/#57', 'platform': 'Visit Norwalk', 'platform_hash': '6c512545976b650462f32fa4246a2768', 'raw_body': '<section class="section_event-details">\n' '<div class="padding-global">\n' '<div class="container-large">\n' '<div class="padding-bottom padding-xhuge">\n' '<div class="w-layout-grid event-detail_details-layout">\n' '<div class="event-detail_layout_image-wrapper" ' 'id="w-node-_5ab4e365-8b26-dd77-71bc-4db67a9f2b9f-b84d85e6">\n' '<div>\n' '<img alt="" class="event-detail_image" loading="lazy" ' 'src="https://res-4.cloudinary.com/civiclift/image/upload/c_fill,f_auto,q_auto/v1/events/ucwsoei48xbbqevsbubc"/>\n' '<div class="event-detail_details-row">\n' '<div class="event-detail_details-row-item">\n' '<div class="label-text">Organizer</div>\n' '<div class="event-detail_org-info-wrapper">\n' '<div class="event-detail_org-header">\n' '<img class="event-detail_org-logo" height="48" ' 'src="https://res-1.cloudinary.com/civiclift/image/upload/c_fill,h_48/v1/logo/knqhq6fek3vd7zx7gmds"/>\n' '<div class="event-detail_detail-text text-weight-semibold ' 'org-name">Norwalk Seaport Association </div>\n' '</div>\n' '<div class="event-detail_detail-wrapper">\n' '<div class="padding-top padding-3px">\n' '<div class="icon-embed-xxsmall w-embed">\n' '<svg fill="currentColor" viewbox="0 0 512 512" ' 'xmlns="http://www.w3.org/2000/svg">\n' '<path d="M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 ' '30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 ' '38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 ' '11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 ' '167c13.7-11.2 18.4-30 11.6-46.3l-40-96z">\n' '</path>\n' '</svg>\n' '</div>\n' '</div>\n' '<a href="tel:(203)%20838-9444">(203) 838-9444</a>\n' '</div>\n' '<div class="event-detail_detail-wrapper">\n' '<div class="padding-top padding-3px">\n' '<div class="icon-embed-xxsmall w-embed">\n' '<svg fill="currentColor" viewbox="0 0 512 512" ' 'xmlns="http://www.w3.org/2000/svg">\n' '<path d="M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 ' '38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 ' '19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM0 176V384c0 35.3 ' '28.7 64 64 64H448c35.3 0 64-28.7 64-64V176L294.4 339.2c-22.8 ' '17.1-54 17.1-76.8 0L0 176z"></path>\n' '</svg>\n' '</div>\n' '</div>\n' '<a class="copy-email-link" ' 'href="mailto:ray.cooke@seaport.org">ray.cooke@seaport.org</a>\n' '</div>\n' '</div>\n' '</div>\n' '<div class="event-detail_details-row-item category-dress-combo" ' 'id="w-node-bbb7b4b7-f74f-7d6f-b3ce-757bfdb3c9c6-b84d85e6">\n' '<div class="event-detail_category-wrapper">\n' '<div class="label-text">Category</div>\n' '<div class="pill-wrapper">\n' '<div class="pill-text-icon">\n' '<div class="icon-embed-xxsmall w-embed">\n' '<svg fill="currentColor" viewbox="0 0 448 512" ' 'xmlns="http://www.w3.org/2000/svg">\n' '<path d="M0 80V229.5c0 17 6.7 33.3 18.7 45.3l176 176c25 25 65.5 ' '25 90.5 0L418.7 317.3c25-25 25-65.5 ' '0-90.5l-176-176c-12-12-28.3-18.7-45.3-18.7H48C21.5 32 0 53.5 0 ' '80zm112 32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"></path>\n' '</svg>\n' '</div>\n' '<div class="pill-text text-size-small">Wildlife &amp; Nature ' 'Exploration</div>\n' '</div>\n' '<div class="pill-text-icon">\n' '<div class="icon-embed-xxsmall w-embed">\n' '<svg fill="currentColor" viewbox="0 0 640 512" ' 'xmlns="http://www.w3.org/2000/svg">\n' '<path d="M160 0a64 64 0 1 1 0 128A64 64 0 1 1 160 0zM88 ' '480V400H70.2c-10.9 0-18.6-10.7-15.2-21.1l31.1-93.4L57.5 ' '323.3c-10.7 14.1-30.8 16.8-44.8 6.2s-16.8-30.7-6.2-44.8L65.4 ' '207c22.4-29.6 57.5-47 94.6-47s72.2 17.4 94.6 47l58.9 77.7c10.7 ' '14.1 7.9 34.2-6.2 44.8s-34.2 7.9-44.8-6.2l-28.6-37.8L265 ' '378.9c3.5 10.4-4.3 21.1-15.2 21.1H232v80c0 17.7-14.3 32-32 ' '32s-32-14.3-32-32V400H152v80c0 17.7-14.3 32-32 ' '32s-32-14.3-32-32zM480 0a64 64 0 1 1 0 128A64 64 0 1 1 480 0zm-8 ' '384v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V300.5L395.1 321c-9.4 ' '15-29.2 19.4-44.1 10s-19.4-29.2-10-44.1l51.7-82.1c17.6-27.9 ' '48.3-44.9 81.2-44.9h12.3c33 0 63.7 16.9 81.2 44.9L619.1 287c9.4 ' '15 4.9 34.7-10 44.1s-34.7 4.9-44.1-10L552 300.5V480c0 17.7-14.3 ' '32-32 32s-32-14.3-32-32V384H472z"></path>\n' '</svg>\n' '</div>\n' '<div class="pill-text text-size-small">All Ages</div>\n' '</div>\n' '</div>\n' '</div>\n' '<div class="event-detail_dress-code-wrapper">\n' '<div class="label-text">Dress</div>\n' '<div class="pill-text-icon">\n' '<div class="icon-embed-xxsmall w-embed">\n' '<svg fill="currentColor" viewbox="0 0 640 512" ' 'xmlns="http://www.w3.org/2000/svg">\n' '<path d="M209.8 84.8C222.3 35 267.1 0 318.5 0H320c61.9 0 112 ' '50.1 112 112v6.3c0 36.5-17.8 70.8-47.8 91.8l-8.3 5.8L608.2 ' '377.2C628.1 391 640 413.7 640 438c0 40.9-33.1 74-74 74H74c-40.9 ' '0-74-33.1-74-74c0-24.2 11.9-47 31.8-60.8L301.6 189.8l.1-.1 ' '45.8-32c12.8-9 20.5-23.7 ' '20.5-39.3V112c0-26.5-21.5-48-48-48h-1.5c-22 0-41.2 15-46.6 ' '36.4l-.9 3.4c-4.3 17.1-21.7 27.6-38.8 ' '23.3s-27.6-21.7-23.3-38.8l.9-3.4zM320 255L68.3 429.7c-2.7 ' '1.9-4.3 4.9-4.3 8.2c0 5.5 4.5 10 10 10H566c5.5 0 10-4.5 ' '10-10c0-3.3-1.6-6.4-4.3-8.2L320 255z"></path>\n' '</svg>\n' '</div>\n' '<div class="pill-text text-size-small">Casual</div>\n' '</div>\n' '</div>\n' '</div>\n' '<div class="event-detail_details-row-item attend-row">\n' '<div class="label-text">Attend</div>\n' '<a class="button is-icon event-detail-cta w-inline-block" ' 'data-outbound-link="" data-outbound-type="ticket_url" ' 'href="https://www.eventbrite.com/e/2026-sunset-cruise-norwalk-seaport-association-tickets-1982197475007?aff=ebdsoporgprofile" ' 'rel="noopener noreferrer" target="_blank">\n' '<div class="icon-embed-xsmall w-embed">\n' '<svg fill="currentColor" viewbox="0 0 576 512" ' 'xmlns="http://www.w3.org/2000/svg">\n' '<path d="M64 64C28.7 64 0 92.7 0 128v64c0 8.8 7.4 15.7 15.7 ' '18.6C34.5 217.1 48 235 48 256s-13.5 38.9-32.3 45.4C7.4 304.3 0 ' '311.2 0 320v64c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 ' '64-64V320c0-8.8-7.4-15.7-15.7-18.6C541.5 294.9 528 277 528 ' '256s13.5-38.9 32.3-45.4c8.3-2.9 15.7-9.8 ' '15.7-18.6V128c0-35.3-28.7-64-64-64H64zm64 112l0 160c0 8.8 7.2 16 ' '16 16H432c8.8 0 16-7.2 16-16V176c0-8.8-7.2-16-16-16H144c-8.8 ' '0-16 7.2-16 16zM96 160c0-17.7 14.3-32 32-32H448c17.7 0 32 14.3 ' '32 32V352c0 17.7-14.3 32-32 32H128c-17.7 ' '0-32-14.3-32-32V160z"></path>\n' '</svg>\n' '</div>\n' '<div>Buy Tickets</div>\n' '</a>\n' '</div>\n' '</div>\n' '</div>\n' '<div class="event-detail_description-wrapper">\n' '<div class="event-detail_detail-title-wrapper">\n' '<div class="icon-embed-xsmall w-embed">\n' '<svg fill="currentColor" viewbox="0 0 448 512" ' 'xmlns="http://www.w3.org/2000/svg">\n' '<path d="M288 64c0 17.7-14.3 32-32 32H32C14.3 96 0 81.7 0 ' '64S14.3 32 32 32H256c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 ' '32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H256c17.7 0 32 ' '14.3 32 32zM0 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 ' '32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 ' '32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 ' '14.3 32 32z"></path>\n' '</svg>\n' '</div>\n' '<div class="event-detail_detail-title">Description</div>\n' '</div>\n' '<div class="text-rich-text event-detail_description ' 'w-richtext">\n' '<p>Norwalk CT Harbor Sunset Lighthouse Cruise</p><p>2026 Sunset ' 'Cruise Norwalk Seaport Association</p><p>Advanced Reservations ' 'Strongly Recommended</p><p>Capacity Limited to 49 Passengers,\xa0' 'Every passenger needs a ticket on board regardless of age as we ' 'have to abide by our passenger count per the US Coast ' 'Guard.</p><p>Cruises Do Sell Out!</p><p>Round trip time is ' 'approximately 2 hours.</p><p>Sunset cruises top the list ' 'worldwide as one of the most popular ways to end the day…so why ' 'not book a sunset cruise with the Norwalk Seaport Association ' 'this summer. On a sunset cruise time seems to slow down giving ' 'you the opportunity to unwind and toast the end of the day or ' 'celebrate the end of a busy week!</p><p>The Seaport’s popular ' 'Sunset Cruise slowly cruises through outer Norwalk Harbor as the ' 'Captain’s Mate tells stories of merchants and sailors that have ' 'used this waterway for centuries. Learn how Native Americans and ' 'English settlers enjoyed the bounty of Long Island Sound and how ' 'captains of industry used this area to develop trade routes that ' 'went as far as the West Indies. The narrative gives a new ' 'understanding of Norwalk historically, and also reflects the ' 'importance of this scenic harbor today.</p><p>As the vessel ' 'travels into Long Island Sound it will give passengers a ' 'close-up view of several of the Norwalk’s islands and the ' 'beautiful homes built on them. The cruise also passes three ' 'historic lighthouses, Peck Ledge, Green Ledge, and, the maritime ' 'icon of Connecticut, Sheffield Island Lighthouse. ' 'Architecturally stunning the Sheffield Island Lighthouse is a ' 'perfect example of Victorian stone masonry. Green Ledge and Peck ' 'Ledge are fine examples of spark plug lighthouses, of which only ' '33 remain in the United States. The view of these three ' 'lighthouses up close as the sun begins to set is ' 'magical.</p><p>Guests will travel in safety and comfort on board ' 'the vessel owned by the Norwalk Seaport Association. Passengers ' 'can eat, drink, and be merry on the sunset cruise because ' 'alcoholic beverages and snacks are allowed, just don’t forget to ' "bring plastic cups and openers!</p><p>COOLERS, CARRY-ON'S, AND " 'ALL PACKAGES MUST FIT BENEATH THE SEATS PER USCG REGULATIONS.\xa0' 'Coolers cannot exceed 18"(H) x 18\' (D) x 24" (W)</p><h3><a ' 'href="https://maps.app.goo.gl/sE6VJgCyCKs9avSC6" rel="noopener ' 'noreferrer" target="_blank">The dock is located at 90 Water ' 'Street, Norwalk CT</a></h3><p>Cruises will depart from our dock ' 'located at 90 Water Street. The dock location is directly across ' 'from the Grit Ninja Norwalk Gym.\xa0There is no parking at our ' 'dock &amp; limited handicapped spaces. The closest paid parking ' 'lot is at 5 Haviland Street.</p><p><a ' 'href="https://www.parknorwalk.org" rel="noopener noreferrer" ' 'target="_blank">https://www.parknorwalk.org</a></p><p>Tickets ' 'are nonrefundable unless there is a weather ' 'cancellation.</p><p>Be sure to provide contact information (both ' 'email &amp; text) in the event we are forced to cancel due to ' 'weather conditions.</p><p>Sheffield Island Lighthouse and Ferry ' 'are available for private and corporate events, please call\xa0' '<a ' 'href="https://www.eventbrite.com/e/2024-sunset-cruise-norwalk-seaport-association-tickets-865513132077?aff=oddtdtcreator" ' 'rel="noopener noreferrer" target="_blank">203-838-9444</a>\xa0' 'for more information.</p>\n' '</div>\n' '</div>\n' '</div>\n' '<div class="event-detail_sidebar-wrapper" ' 'id="w-node-_6e446bf9-7ae9-4070-9c51-24f38159f840-b84d85e6">\n' '<div class="event-detail_info-list-wrapper">\n' '<div class="event-detail_detail-item">\n' '<div class="icon-embed-xsmall primary-color w-embed">\n' '<svg fill="currentColor" viewbox="0 0 512 512" ' 'xmlns="http://www.w3.org/2000/svg">\n' '<path d="M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 ' '120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 ' '33.3-6.7s4.4-25.9-6.7-33.3L280 ' '243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z"></path>\n' '</svg>\n' '</div>\n' '<div class="event-detail_detail-item-text-wrapper">\n' '<div class="event-detail_detail-title">When</div>\n' '<div class="event-detail_detail-info">\n' '<div class="event-detail_info-wrapper">\n' '<div>Friday, Jun 19, 2026</div>\n' '</div>\n' '<div class="event-detail_info-wrapper">\n' '<div class="event-detail_details-text">6:30 pm</div>\n' '<div class="padding-horizontal padding-tiny">-</div>\n' '<div class="event-detail_details-text">8:30 pm</div>\n' '</div>\n' '<turbo-frame id="weather_event_267427" loading="lazy" ' 'src="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-19-2026/weather?variant=detail" ' 'style="display: block"></turbo-frame>\n' '<div data-controller="occurrences-accordion" style="margin-top: ' '8px;">\n' '<div style="font-size: 0.875rem; color: #666;">\n' '<span>Every Friday</span>\n' '<span style="margin: 0 4px;">·</span>\n' '<a aria-expanded="false" ' 'data-action="click-&gt;occurrences-accordion#toggle ' 'keydown-&gt;occurrences-accordion#keydown" ' 'data-occurrences-accordion-target="trigger" href="#" ' 'role="button" style="color: inherit; text-decoration: underline; ' 'text-decoration-style: dotted; text-underline-offset: 2px;">\n' ' 10 more dates <span ' 'aria-hidden="true" data-arrow="">▾</span>\n' '</a>\n' '</div>\n' '<div data-occurrences-accordion-target="list" hidden="" ' 'style="margin-top: 8px;">\n' '<div style="padding: 4px 0; font-size: 0.875rem;">\n' '<a ' 'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-17-2026" ' 'style="color: inherit; text-decoration: none;">\n' '<span>Wednesday, Jun 17, 2026</span>\n' '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n' '</a>\n' '</div>\n' '<div style="padding: 4px 0; font-size: 0.875rem;">\n' '<a ' 'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-18-2026" ' 'style="color: inherit; text-decoration: none;">\n' '<span>Thursday, Jun 18, 2026</span>\n' '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n' '</a>\n' '</div>\n' '<div style="padding: 4px 0; font-size: 0.875rem;">\n' '<a ' 'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-20-2026" ' 'style="color: inherit; text-decoration: none;">\n' '<span>Saturday, Jun 20, 2026</span>\n' '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n' '</a>\n' '</div>\n' '<div style="padding: 4px 0; font-size: 0.875rem;">\n' '<a ' 'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-21-2026" ' 'style="color: inherit; text-decoration: none;">\n' '<span>Sunday, Jun 21, 2026</span>\n' '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n' '</a>\n' '</div>\n' '<div style="padding: 4px 0; font-size: 0.875rem;">\n' '<a ' 'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-24-2026" ' 'style="color: inherit; text-decoration: none;">\n' '<span>Wednesday, Jun 24, 2026</span>\n' '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n' '</a>\n' '</div>\n' '<div style="padding: 4px 0; font-size: 0.875rem;">\n' '<a ' 'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-25-2026" ' 'style="color: inherit; text-decoration: none;">\n' '<span>Thursday, Jun 25, 2026</span>\n' '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n' '</a>\n' '</div>\n' '<div style="padding: 4px 0; font-size: 0.875rem;">\n' '<a ' 'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-26-2026" ' 'style="color: inherit; text-decoration: none;">\n' '<span>Friday, Jun 26, 2026</span>\n' '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n' '</a>\n' '</div>\n' '<div style="padding: 4px 0; font-size: 0.875rem;">\n' '<a ' 'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-27-2026" ' 'style="color: inherit; text-decoration: none;">\n' '<span>Saturday, Jun 27, 2026</span>\n' '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n' '</a>\n' '</div>\n' '<div style="padding: 4px 0; font-size: 0.875rem;">\n' '<a ' 'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-28-2026" ' 'style="color: inherit; text-decoration: none;">\n' '<span>Sunday, Jun 28, 2026</span>\n' '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n' '</a>\n' '</div>\n' '<div style="padding: 4px 0; font-size: 0.875rem;">\n' '<a ' 'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-07-01-2026" ' 'style="color: inherit; text-decoration: none;">\n' '<span>Wednesday, Jul 1, 2026</span>\n' '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n' '</a>\n' '</div>\n' '</div>\n' '</div>\n' '</div>\n' '</div>\n' '</div>\n' '<div class="event-detail_detail-item">\n' '<div class="icon-embed-xsmall pin primary-color w-embed">\n' '<svg fill="currentColor" viewbox="0 0 384 512" ' 'xmlns="http://www.w3.org/2000/svg">\n' '<path d="M192 512s192-208 192-320C384 86 298 0 192 0S0 86 0 ' '192C0 304 192 512 192 512zm0-384a64 64 0 1 1 0 128 64 64 0 1 1 ' '0-128z"></path>\n' '</svg>\n' '</div>\n' '<div class="event-detail_detail-item-text-wrapper">\n' '<div class="event-detail_detail-title">Where</div>\n' '<div class="event-detail_detail-info">\n' '<div class="text-weight-semibold">Sheffield Island Lighthouse ' 'Dock</div>\n' '<div class="event-detail_venue-address">\n' '<div class="event-detail_details-text">90 Water Street</div>\n' '<div class="text-size-small neg-left-margin">,</div>\n' '<div class="event-detail_details-text">Norwalk, CT, 06854</div>\n' '</div>\n' '<div class="button-column">\n' '<div class="w-embed">\n' '<div class="button is-link is-icon" style="display: flex; ' 'align-items: center; gap: 0.5rem">\n' '<a data-outbound-link="" data-outbound-type="directions" ' 'href="https://www.google.com/maps/dir/?api=1&amp;destination=Sheffield+Island+Lighthouse+Dock,90+Water+Street,Norwalk,CT,06854" ' 'rel="noopener noreferrer" style="color: inherit; display: flex; ' 'align-items: center; gap: 0.25rem" target="_blank">\n' ' Directions\n' ' <div ' 'class="icon-embed-xxsmall" style="display: flex; align-items: ' 'center">\n' '<svg fill="currentColor" viewbox="0 0 384 512" ' 'xmlns="http://www.w3.org/2000/svg">\n' '<path d="M328 96c13.3 0 24 10.7 24 24V360c0 13.3-10.7 24-24 ' '24s-24-10.7-24-24V177.9L73 409c-9.4 9.4-24.6 9.4-33.9 ' '0s-9.4-24.6 0-33.9l231-231H88c-13.3 0-24-10.7-24-24s10.7-24 ' '24-24H328z"></path>\n' '</svg>\n' '</div>\n' '</a>\n' '</div>\n' '</div>\n' '<a class="button is-link is-icon w-inline-block" ' 'data-outbound-link="" data-outbound-type="venue_url" ' 'href="http://www.seaport.org" rel="noopener noreferrer" ' 'target="_blank">\n' '<div>Venue Website</div>\n' '<div class="icon-embed-xxsmall w-embed">\n' '<svg fill="currentColor" viewbox="0 0 384 512" ' 'xmlns="http://www.w3.org/2000/svg">\n' '<path d="M328 96c13.3 0 24 10.7 24 24V360c0 13.3-10.7 24-24 ' '24s-24-10.7-24-24V177.9L73 409c-9.4 9.4-24.6 9.4-33.9 ' '0s-9.4-24.6 0-33.9l231-231H88c-13.3 0-24-10.7-24-24s10.7-24 ' '24-24H328z"></path>\n' '</svg>\n' '</div>\n' '</a>\n' '</div>\n' '</div>\n' '</div>\n' '</div>\n' '<div class="event-detail_detail-item">\n' '<div class="icon-embed-xsmall primary-color w-embed">\n' '<svg aria-hidden="true" class="svg-inline--fa ' 'fa-money-bill-wave" data-icon="money-bill-wave" ' 'data-prefix="fas" focusable="false" role="img" viewbox="0 0 576 ' '512" xmlns="http://www.w3.org/2000/svg">\n' '<path d="M559 54.5C524.1 38.25 489.2 32 454.3 32C343.5 32 232.5 ' '94.38 121.7 94.38c-27.79 0-55.57-4-83.36-13.75C35.21 79.5 32.06 ' '79 29.03 79C13.5 79 0 92.38 0 110.8v317.4c0 12.62 6.525 24.5 ' '16.99 29.38C51.86 473.8 86.85 480 121.7 480c110.8 0 221.7-62.38 ' '332.6-62.38c27.79 0 55.57 4 83.36 13.75c3.15 1.125 6.301 1.625 ' '9.338 1.625C562.5 433 576 419.6 576 401.1V83.88C576 71.25 569.5 ' '59.38 559 54.5zM528 151.2C496.5 147.2 472 120.6 472 88c0-2.209 ' '.4486-4.262 .6751-6.403C492 83.22 510.7 86.56 528 ' '93.39V151.2zM208 256c0-53.02 35.82-96 79.1-96s79.1 42.98 79.1 ' '96c0 53.02-35.82 96-79.1 96S208 309 208 256zM48 133.6C68.05 ' '138.6 88.86 140.1 110.4 141.7C104.2 170.5 78.63 192 48 ' '192V133.6zM48 360.8C79.53 364.8 104 391.4 104 424c0 2.207-.4486 ' '4.262-.6751 6.403C83.95 428.8 65.35 425.4 48 418.6V360.8zM528 ' '378.4c-20.05-5.02-40.85-7.4-62.44-8.139C471.8 341.5 497.4 320 ' '528 320V378.4z" fill="currentColor"></path>\n' '</svg>\n' '</div>\n' '<div class="event-detail_detail-item-text-wrapper">\n' '<div class="event-detail_detail-title">How Much</div>\n' '<div class="event-detail_detail-info">\n' '<div>$40</div>\n' '</div>\n' '</div>\n' '</div>\n' '</div>\n' '</div>\n' '</div>\n' '</div>\n' '</div>\n' '</div>\n' '</section>'}
    • WARNING+

    • error_logs
      57 in total

      2026-06-16 17:21:47 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:48 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:48 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:48 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:48 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:50 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:51 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:53 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:54 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:54 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:54 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:55 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:55 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:55 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:55 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:55 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:56 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:56 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:56 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:56 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:56 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:57 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:57 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:57 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:57 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:58 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:58 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:58 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:59 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:59 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:59 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:59 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:00 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:00 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:00 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:00 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:00 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:01 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:01 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:01 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:01 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:02 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:02 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:02 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:02 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:02 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:03 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:03 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:03 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:03 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:04 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:04 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:04 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:05 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:05 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:05 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:22:07 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
    • warning_logs
      1 in total

      2026-06-16 17:21:34 [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 17:21:34 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.visit_norwalk.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 17:21:46 [scrapy_zyte_api._params] WARNING: Cookies are enabled for request <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-07-01&page=2>, 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.

      INFO

      DEBUG

    • scrapy_version

      2.14.1
    • telnet_console

      127.0.0.1:6024
    • telnet_password

      0914407be3a8ee86
    • latest_duplicate

      2026-06-16 17:21:51 [scrapy.dupefilters] DEBUG: Filtered duplicate request: <GET https://www.civiclift.com/feeds/845/events/mecha-noodle-bar-retro-gaming-pop-up-south-norwalk-06-16-2026> - no more duplicates will be shown (see DUPEFILTER_DEBUG to show all duplicates)
    • latest_crawl

      2026-06-16 17:23:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-12-28&page=14> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-12-13&page=13)
    • latest_stat

      2026-06-16 17:22:34 [scrapy.extensions.logstats] INFO: Crawled 64 pages (at 64 pages/min), scraped 57 items (at 57 items/min)
    • latest_scrape

      2026-06-16 17:22:07 [scrapy.core.scraper] DEBUG: Scraped from <200 https://www.civiclift.com/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-19-2026>
    • latest_item

      {'event_url': 'https://www.visitnorwalk.org/events-in-norwalk/#57',
       'platform': 'Visit Norwalk',
       'platform_hash': '6c512545976b650462f32fa4246a2768',
       'raw_body': '<section class="section_event-details">\n'
                   '<div class="padding-global">\n'
                   '<div class="container-large">\n'
                   '<div class="padding-bottom padding-xhuge">\n'
                   '<div class="w-layout-grid event-detail_details-layout">\n'
                   '<div class="event-detail_layout_image-wrapper" '
                   'id="w-node-_5ab4e365-8b26-dd77-71bc-4db67a9f2b9f-b84d85e6">\n'
                   '<div>\n'
                   '<img alt="" class="event-detail_image" loading="lazy" '
                   'src="https://res-4.cloudinary.com/civiclift/image/upload/c_fill,f_auto,q_auto/v1/events/ucwsoei48xbbqevsbubc"/>\n'
                   '<div class="event-detail_details-row">\n'
                   '<div class="event-detail_details-row-item">\n'
                   '<div class="label-text">Organizer</div>\n'
                   '<div class="event-detail_org-info-wrapper">\n'
                   '<div class="event-detail_org-header">\n'
                   '<img class="event-detail_org-logo" height="48" '
                   'src="https://res-1.cloudinary.com/civiclift/image/upload/c_fill,h_48/v1/logo/knqhq6fek3vd7zx7gmds"/>\n'
                   '<div class="event-detail_detail-text text-weight-semibold '
                   'org-name">Norwalk Seaport Association </div>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-wrapper">\n'
                   '<div class="padding-top padding-3px">\n'
                   '<div class="icon-embed-xxsmall w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 512 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M164.9 24.6c-7.7-18.6-28-28.5-47.4-23.2l-88 24C12.1 '
                   '30.2 0 46 0 64C0 311.4 200.6 512 448 512c18 0 33.8-12.1 '
                   '38.6-29.5l24-88c5.3-19.4-4.6-39.7-23.2-47.4l-96-40c-16.3-6.8-35.2-2.1-46.3 '
                   '11.6L304.7 368C234.3 334.7 177.3 277.7 144 207.3L193.3 '
                   '167c13.7-11.2 18.4-30 11.6-46.3l-40-96z">\n'
                   '</path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '</div>\n'
                   '<a href="tel:(203)%20838-9444">(203) 838-9444</a>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-wrapper">\n'
                   '<div class="padding-top padding-3px">\n'
                   '<div class="icon-embed-xxsmall w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 512 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 '
                   '38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 '
                   '19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM0 176V384c0 35.3 '
                   '28.7 64 64 64H448c35.3 0 64-28.7 64-64V176L294.4 339.2c-22.8 '
                   '17.1-54 17.1-76.8 0L0 176z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '</div>\n'
                   '<a class="copy-email-link" '
                   'href="mailto:ray.cooke@seaport.org">ray.cooke@seaport.org</a>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '<div class="event-detail_details-row-item category-dress-combo" '
                   'id="w-node-bbb7b4b7-f74f-7d6f-b3ce-757bfdb3c9c6-b84d85e6">\n'
                   '<div class="event-detail_category-wrapper">\n'
                   '<div class="label-text">Category</div>\n'
                   '<div class="pill-wrapper">\n'
                   '<div class="pill-text-icon">\n'
                   '<div class="icon-embed-xxsmall w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 448 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M0 80V229.5c0 17 6.7 33.3 18.7 45.3l176 176c25 25 65.5 '
                   '25 90.5 0L418.7 317.3c25-25 25-65.5 '
                   '0-90.5l-176-176c-12-12-28.3-18.7-45.3-18.7H48C21.5 32 0 53.5 0 '
                   '80zm112 32a32 32 0 1 1 0 64 32 32 0 1 1 0-64z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '<div class="pill-text text-size-small">Wildlife &amp; Nature '
                   'Exploration</div>\n'
                   '</div>\n'
                   '<div class="pill-text-icon">\n'
                   '<div class="icon-embed-xxsmall w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 640 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M160 0a64 64 0 1 1 0 128A64 64 0 1 1 160 0zM88 '
                   '480V400H70.2c-10.9 0-18.6-10.7-15.2-21.1l31.1-93.4L57.5 '
                   '323.3c-10.7 14.1-30.8 16.8-44.8 6.2s-16.8-30.7-6.2-44.8L65.4 '
                   '207c22.4-29.6 57.5-47 94.6-47s72.2 17.4 94.6 47l58.9 77.7c10.7 '
                   '14.1 7.9 34.2-6.2 44.8s-34.2 7.9-44.8-6.2l-28.6-37.8L265 '
                   '378.9c3.5 10.4-4.3 21.1-15.2 21.1H232v80c0 17.7-14.3 32-32 '
                   '32s-32-14.3-32-32V400H152v80c0 17.7-14.3 32-32 '
                   '32s-32-14.3-32-32zM480 0a64 64 0 1 1 0 128A64 64 0 1 1 480 0zm-8 '
                   '384v96c0 17.7-14.3 32-32 32s-32-14.3-32-32V300.5L395.1 321c-9.4 '
                   '15-29.2 19.4-44.1 10s-19.4-29.2-10-44.1l51.7-82.1c17.6-27.9 '
                   '48.3-44.9 81.2-44.9h12.3c33 0 63.7 16.9 81.2 44.9L619.1 287c9.4 '
                   '15 4.9 34.7-10 44.1s-34.7 4.9-44.1-10L552 300.5V480c0 17.7-14.3 '
                   '32-32 32s-32-14.3-32-32V384H472z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '<div class="pill-text text-size-small">All Ages</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '<div class="event-detail_dress-code-wrapper">\n'
                   '<div class="label-text">Dress</div>\n'
                   '<div class="pill-text-icon">\n'
                   '<div class="icon-embed-xxsmall w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 640 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M209.8 84.8C222.3 35 267.1 0 318.5 0H320c61.9 0 112 '
                   '50.1 112 112v6.3c0 36.5-17.8 70.8-47.8 91.8l-8.3 5.8L608.2 '
                   '377.2C628.1 391 640 413.7 640 438c0 40.9-33.1 74-74 74H74c-40.9 '
                   '0-74-33.1-74-74c0-24.2 11.9-47 31.8-60.8L301.6 189.8l.1-.1 '
                   '45.8-32c12.8-9 20.5-23.7 '
                   '20.5-39.3V112c0-26.5-21.5-48-48-48h-1.5c-22 0-41.2 15-46.6 '
                   '36.4l-.9 3.4c-4.3 17.1-21.7 27.6-38.8 '
                   '23.3s-27.6-21.7-23.3-38.8l.9-3.4zM320 255L68.3 429.7c-2.7 '
                   '1.9-4.3 4.9-4.3 8.2c0 5.5 4.5 10 10 10H566c5.5 0 10-4.5 '
                   '10-10c0-3.3-1.6-6.4-4.3-8.2L320 255z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '<div class="pill-text text-size-small">Casual</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '<div class="event-detail_details-row-item attend-row">\n'
                   '<div class="label-text">Attend</div>\n'
                   '<a class="button is-icon event-detail-cta w-inline-block" '
                   'data-outbound-link="" data-outbound-type="ticket_url" '
                   'href="https://www.eventbrite.com/e/2026-sunset-cruise-norwalk-seaport-association-tickets-1982197475007?aff=ebdsoporgprofile" '
                   'rel="noopener noreferrer" target="_blank">\n'
                   '<div class="icon-embed-xsmall w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 576 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M64 64C28.7 64 0 92.7 0 128v64c0 8.8 7.4 15.7 15.7 '
                   '18.6C34.5 217.1 48 235 48 256s-13.5 38.9-32.3 45.4C7.4 304.3 0 '
                   '311.2 0 320v64c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 '
                   '64-64V320c0-8.8-7.4-15.7-15.7-18.6C541.5 294.9 528 277 528 '
                   '256s13.5-38.9 32.3-45.4c8.3-2.9 15.7-9.8 '
                   '15.7-18.6V128c0-35.3-28.7-64-64-64H64zm64 112l0 160c0 8.8 7.2 16 '
                   '16 16H432c8.8 0 16-7.2 16-16V176c0-8.8-7.2-16-16-16H144c-8.8 '
                   '0-16 7.2-16 16zM96 160c0-17.7 14.3-32 32-32H448c17.7 0 32 14.3 '
                   '32 32V352c0 17.7-14.3 32-32 32H128c-17.7 '
                   '0-32-14.3-32-32V160z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '<div>Buy Tickets</div>\n'
                   '</a>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '<div class="event-detail_description-wrapper">\n'
                   '<div class="event-detail_detail-title-wrapper">\n'
                   '<div class="icon-embed-xsmall w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 448 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M288 64c0 17.7-14.3 32-32 32H32C14.3 96 0 81.7 0 '
                   '64S14.3 32 32 32H256c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 '
                   '32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H256c17.7 0 32 '
                   '14.3 32 32zM0 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 '
                   '32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 '
                   '32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 '
                   '14.3 32 32z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-title">Description</div>\n'
                   '</div>\n'
                   '<div class="text-rich-text event-detail_description '
                   'w-richtext">\n'
                   '<p>Norwalk CT Harbor Sunset Lighthouse Cruise</p><p>2026 Sunset '
                   'Cruise Norwalk Seaport Association</p><p>Advanced Reservations '
                   'Strongly Recommended</p><p>Capacity Limited to 49 Passengers,\xa0'
                   'Every passenger needs a ticket on board regardless of age as we '
                   'have to abide by our passenger count per the US Coast '
                   'Guard.</p><p>Cruises Do Sell Out!</p><p>Round trip time is '
                   'approximately 2 hours.</p><p>Sunset cruises top the list '
                   'worldwide as one of the most popular ways to end the day…so why '
                   'not book a sunset cruise with the Norwalk Seaport Association '
                   'this summer. On a sunset cruise time seems to slow down giving '
                   'you the opportunity to unwind and toast the end of the day or '
                   'celebrate the end of a busy week!</p><p>The Seaport’s popular '
                   'Sunset Cruise slowly cruises through outer Norwalk Harbor as the '
                   'Captain’s Mate tells stories of merchants and sailors that have '
                   'used this waterway for centuries. Learn how Native Americans and '
                   'English settlers enjoyed the bounty of Long Island Sound and how '
                   'captains of industry used this area to develop trade routes that '
                   'went as far as the West Indies. The narrative gives a new '
                   'understanding of Norwalk historically, and also reflects the '
                   'importance of this scenic harbor today.</p><p>As the vessel '
                   'travels into Long Island Sound it will give passengers a '
                   'close-up view of several of the Norwalk’s islands and the '
                   'beautiful homes built on them. The cruise also passes three '
                   'historic lighthouses, Peck Ledge, Green Ledge, and, the maritime '
                   'icon of Connecticut, Sheffield Island Lighthouse. '
                   'Architecturally stunning the Sheffield Island Lighthouse is a '
                   'perfect example of Victorian stone masonry. Green Ledge and Peck '
                   'Ledge are fine examples of spark plug lighthouses, of which only '
                   '33 remain in the United States. The view of these three '
                   'lighthouses up close as the sun begins to set is '
                   'magical.</p><p>Guests will travel in safety and comfort on board '
                   'the vessel owned by the Norwalk Seaport Association. Passengers '
                   'can eat, drink, and be merry on the sunset cruise because '
                   'alcoholic beverages and snacks are allowed, just don’t forget to '
                   "bring plastic cups and openers!</p><p>COOLERS, CARRY-ON'S, AND "
                   'ALL PACKAGES MUST FIT BENEATH THE SEATS PER USCG REGULATIONS.\xa0'
                   'Coolers cannot exceed 18"(H) x 18\' (D) x 24" (W)</p><h3><a '
                   'href="https://maps.app.goo.gl/sE6VJgCyCKs9avSC6" rel="noopener '
                   'noreferrer" target="_blank">The dock is located at 90 Water '
                   'Street, Norwalk CT</a></h3><p>Cruises will depart from our dock '
                   'located at 90 Water Street. The dock location is directly across '
                   'from the Grit Ninja Norwalk Gym.\xa0There is no parking at our '
                   'dock &amp; limited handicapped spaces. The closest paid parking '
                   'lot is at 5 Haviland Street.</p><p><a '
                   'href="https://www.parknorwalk.org" rel="noopener noreferrer" '
                   'target="_blank">https://www.parknorwalk.org</a></p><p>Tickets '
                   'are nonrefundable unless there is a weather '
                   'cancellation.</p><p>Be sure to provide contact information (both '
                   'email &amp; text) in the event we are forced to cancel due to '
                   'weather conditions.</p><p>Sheffield Island Lighthouse and Ferry '
                   'are available for private and corporate events, please call\xa0'
                   '<a '
                   'href="https://www.eventbrite.com/e/2024-sunset-cruise-norwalk-seaport-association-tickets-865513132077?aff=oddtdtcreator" '
                   'rel="noopener noreferrer" target="_blank">203-838-9444</a>\xa0'
                   'for more information.</p>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '<div class="event-detail_sidebar-wrapper" '
                   'id="w-node-_6e446bf9-7ae9-4070-9c51-24f38159f840-b84d85e6">\n'
                   '<div class="event-detail_info-list-wrapper">\n'
                   '<div class="event-detail_detail-item">\n'
                   '<div class="icon-embed-xsmall primary-color w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 512 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 '
                   '120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 '
                   '33.3-6.7s4.4-25.9-6.7-33.3L280 '
                   '243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-item-text-wrapper">\n'
                   '<div class="event-detail_detail-title">When</div>\n'
                   '<div class="event-detail_detail-info">\n'
                   '<div class="event-detail_info-wrapper">\n'
                   '<div>Friday, Jun 19, 2026</div>\n'
                   '</div>\n'
                   '<div class="event-detail_info-wrapper">\n'
                   '<div class="event-detail_details-text">6:30 pm</div>\n'
                   '<div class="padding-horizontal padding-tiny">-</div>\n'
                   '<div class="event-detail_details-text">8:30 pm</div>\n'
                   '</div>\n'
                   '<turbo-frame id="weather_event_267427" loading="lazy" '
                   'src="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-19-2026/weather?variant=detail" '
                   'style="display: block"></turbo-frame>\n'
                   '<div data-controller="occurrences-accordion" style="margin-top: '
                   '8px;">\n'
                   '<div style="font-size: 0.875rem; color: #666;">\n'
                   '<span>Every Friday</span>\n'
                   '<span style="margin: 0 4px;">·</span>\n'
                   '<a aria-expanded="false" '
                   'data-action="click-&gt;occurrences-accordion#toggle '
                   'keydown-&gt;occurrences-accordion#keydown" '
                   'data-occurrences-accordion-target="trigger" href="#" '
                   'role="button" style="color: inherit; text-decoration: underline; '
                   'text-decoration-style: dotted; text-underline-offset: 2px;">\n'
                   '                                10 more dates <span '
                   'aria-hidden="true" data-arrow="">▾</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div data-occurrences-accordion-target="list" hidden="" '
                   'style="margin-top: 8px;">\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-17-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Wednesday, Jun 17, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-18-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Thursday, Jun 18, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-20-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Saturday, Jun 20, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-21-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Sunday, Jun 21, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-24-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Wednesday, Jun 24, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-25-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Thursday, Jun 25, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-26-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Friday, Jun 26, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-27-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Saturday, Jun 27, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-28-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Sunday, Jun 28, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-07-01-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Wednesday, Jul 1, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-item">\n'
                   '<div class="icon-embed-xsmall pin primary-color w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 384 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M192 512s192-208 192-320C384 86 298 0 192 0S0 86 0 '
                   '192C0 304 192 512 192 512zm0-384a64 64 0 1 1 0 128 64 64 0 1 1 '
                   '0-128z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-item-text-wrapper">\n'
                   '<div class="event-detail_detail-title">Where</div>\n'
                   '<div class="event-detail_detail-info">\n'
                   '<div class="text-weight-semibold">Sheffield Island Lighthouse '
                   'Dock</div>\n'
                   '<div class="event-detail_venue-address">\n'
                   '<div class="event-detail_details-text">90 Water Street</div>\n'
                   '<div class="text-size-small neg-left-margin">,</div>\n'
                   '<div class="event-detail_details-text">Norwalk, CT, 06854</div>\n'
                   '</div>\n'
                   '<div class="button-column">\n'
                   '<div class="w-embed">\n'
                   '<div class="button is-link is-icon" style="display: flex; '
                   'align-items: center; gap: 0.5rem">\n'
                   '<a data-outbound-link="" data-outbound-type="directions" '
                   'href="https://www.google.com/maps/dir/?api=1&amp;destination=Sheffield+Island+Lighthouse+Dock,90+Water+Street,Norwalk,CT,06854" '
                   'rel="noopener noreferrer" style="color: inherit; display: flex; '
                   'align-items: center; gap: 0.25rem" target="_blank">\n'
                   '                                    Directions\n'
                   '                                    <div '
                   'class="icon-embed-xxsmall" style="display: flex; align-items: '
                   'center">\n'
                   '<svg fill="currentColor" viewbox="0 0 384 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M328 96c13.3 0 24 10.7 24 24V360c0 13.3-10.7 24-24 '
                   '24s-24-10.7-24-24V177.9L73 409c-9.4 9.4-24.6 9.4-33.9 '
                   '0s-9.4-24.6 0-33.9l231-231H88c-13.3 0-24-10.7-24-24s10.7-24 '
                   '24-24H328z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '</a>\n'
                   '</div>\n'
                   '</div>\n'
                   '<a class="button is-link is-icon w-inline-block" '
                   'data-outbound-link="" data-outbound-type="venue_url" '
                   'href="http://www.seaport.org" rel="noopener noreferrer" '
                   'target="_blank">\n'
                   '<div>Venue Website</div>\n'
                   '<div class="icon-embed-xxsmall w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 384 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M328 96c13.3 0 24 10.7 24 24V360c0 13.3-10.7 24-24 '
                   '24s-24-10.7-24-24V177.9L73 409c-9.4 9.4-24.6 9.4-33.9 '
                   '0s-9.4-24.6 0-33.9l231-231H88c-13.3 0-24-10.7-24-24s10.7-24 '
                   '24-24H328z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '</a>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-item">\n'
                   '<div class="icon-embed-xsmall primary-color w-embed">\n'
                   '<svg aria-hidden="true" class="svg-inline--fa '
                   'fa-money-bill-wave" data-icon="money-bill-wave" '
                   'data-prefix="fas" focusable="false" role="img" viewbox="0 0 576 '
                   '512" xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M559 54.5C524.1 38.25 489.2 32 454.3 32C343.5 32 232.5 '
                   '94.38 121.7 94.38c-27.79 0-55.57-4-83.36-13.75C35.21 79.5 32.06 '
                   '79 29.03 79C13.5 79 0 92.38 0 110.8v317.4c0 12.62 6.525 24.5 '
                   '16.99 29.38C51.86 473.8 86.85 480 121.7 480c110.8 0 221.7-62.38 '
                   '332.6-62.38c27.79 0 55.57 4 83.36 13.75c3.15 1.125 6.301 1.625 '
                   '9.338 1.625C562.5 433 576 419.6 576 401.1V83.88C576 71.25 569.5 '
                   '59.38 559 54.5zM528 151.2C496.5 147.2 472 120.6 472 88c0-2.209 '
                   '.4486-4.262 .6751-6.403C492 83.22 510.7 86.56 528 '
                   '93.39V151.2zM208 256c0-53.02 35.82-96 79.1-96s79.1 42.98 79.1 '
                   '96c0 53.02-35.82 96-79.1 96S208 309 208 256zM48 133.6C68.05 '
                   '138.6 88.86 140.1 110.4 141.7C104.2 170.5 78.63 192 48 '
                   '192V133.6zM48 360.8C79.53 364.8 104 391.4 104 424c0 2.207-.4486 '
                   '4.262-.6751 6.403C83.95 428.8 65.35 425.4 48 418.6V360.8zM528 '
                   '378.4c-20.05-5.02-40.85-7.4-62.44-8.139C471.8 341.5 497.4 320 '
                   '528 320V378.4z" fill="currentColor"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-item-text-wrapper">\n'
                   '<div class="event-detail_detail-title">How Much</div>\n'
                   '<div class="event-detail_detail-info">\n'
                   '<div>$40</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</section>'}
    • Head

      2026-06-16 17:21:34 [scrapy.utils.log] INFO: Scrapy 2.14.1 started (bot: event_scrapers)
      2026-06-16 17:21:34 [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 17:21:34 [scrapy.crawler] DEBUG: Using AsyncCrawlerProcess
      2026-06-16 17:21:34 [asyncio] DEBUG: Using selector: EpollSelector
      2026-06-16 17:21:34 [scrapy.addons] INFO: Enabled addons:
      []
      2026-06-16 17:21:34 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor
      2026-06-16 17:21:34 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop
      2026-06-16 17:21:34 [scrapy.extensions.telnet] INFO: Telnet Password: 0914407be3a8ee86
      2026-06-16 17:21:34 [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 17:21:34 [scrapy.crawler] INFO: Overridden settings:
      {'BOT_NAME': 'event_scrapers',
       'FEED_EXPORT_ENCODING': 'utf-8',
       'FEED_URI_PARAMS': <function _feed_uri_params at 0x722977a3c540>,
       'LOG_FILE': '/root/event-list-scraping/logs/event_scrapers/visit_norwalk/0bc13a2e699711f1bbc60050565fa5d9.log',
       'NEWSPIDER_MODULE': 'event_scrapers.spiders',
       'REQUEST_FINGERPRINTER_CLASS': 'scrapy_zyte_api.ScrapyZyteAPIRequestFingerprinter',
       'SPIDER_MODULES': ['event_scrapers.spiders']}
      2026-06-16 17:21:34 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
      2026-06-16 17:21:34 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
      2026-06-16 17:21:34 [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 17:21:34 [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 17:21:34 [scrapy.middleware] INFO: Enabled item pipelines:
      ['event_scrapers.pipelines.EventScrapersPipeline']
      2026-06-16 17:21:34 [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 17:21:34 [scrapy.core.engine] INFO: Spider opened
      2026-06-16 17:21:34 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.visit_norwalk.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 17:21:34 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
      2026-06-16 17:21:34 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6024
      2026-06-16 17:21:46 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events> (referer: None)
      2026-06-16 17:21:46 [scrapy_zyte_api._params] WARNING: Cookies are enabled for request <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-07-01&page=2>, 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-06-16 17:21:47 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events/cnc-101-intro-to-cnc-woodworking> (referer: https://www.civiclift.com/feeds/845/events)
      2026-06-16 17:21:47 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): 144.91.120.141:80
      2026-06-16 17:21:47 [urllib3.connectionpool] DEBUG: http://144.91.120.141:80 "POST /api/v1/raw-events/ HTTP/1.1" 400 68
      2026-06-16 17:21:47 [visit_norwalk] ERROR: API error 400: {"event_url":["Raw Event Data with this event url already exists."]}
      2026-06-16 17:21:47 [scrapy.core.scraper] DEBUG: Scraped from <200 https://www.civiclift.com/feeds/845/events/cnc-101-intro-to-cnc-woodworking>
      {'event_url': 'https://www.visitnorwalk.org/events-in-norwalk/#1',
       'platform': 'Visit Norwalk',
       'platform_hash': '6c512545976b650462f32fa4246a2768',
       'raw_body': '<section class="section_event-details">\n'
                   '<div class="padding-global">\n'
                   '<div class="container-large">\n'
                   '<div class="padding-bottom padding-xhuge">\n'
                   '<div class="w-layout-grid event-detail_details-layout">\n'
                   '<div class="event-detail_layout_image-wrapper" '
                   'id="w-node-_5ab4e365-8b26-dd77-71bc-4db67a9f2b9f-b84d85e6">\n'
                   '<div>\n'
                   '<img alt="" class="event-detail_image" loading="lazy" '
                   'src="https://res-1.cloudinary.com/civiclift/image/upload/c_fill,f_auto,q_auto/v1/events/j57nqysg8buczwlmilxg"/>\n'
                   '<div class="event-detail_details-row">\n'
                   '<div class="event-detail_details-row-item">\n'
                   '<div class="label-text">Organizer</div>\n'
                   '<div class="event-detail_org-info-wrapper">\n'
                   '<div class="event-detail_org-header">\n'
                   '<img class="event-detail_org-logo" height="48" '
                   'src="https://res-2.cloudinary.com/civiclift/image/upload/c_fill,h_48/v1/logo/w2fgqnwgoaaujzzz5ucr"/>\n'
                   '<div class="event-detail_detail-text text-weight-semibold '
                   'org-name">Makers\' Guild</div>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-wrapper">\n'
    • Tail

                   '<span>Sunday, Jun 21, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-24-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Wednesday, Jun 24, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-25-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Thursday, Jun 25, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-26-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Friday, Jun 26, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-27-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Saturday, Jun 27, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-06-28-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Sunday, Jun 28, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '<div style="padding: 4px 0; font-size: 0.875rem;">\n'
                   '<a '
                   'href="/feeds/845/events/2026-sunset-cruise-norwalk-seaport-association-07-01-2026" '
                   'style="color: inherit; text-decoration: none;">\n'
                   '<span>Wednesday, Jul 1, 2026</span>\n'
                   '<span style="margin-left: 4px; opacity: 0.6;">6:30 pm</span>\n'
                   '</a>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-item">\n'
                   '<div class="icon-embed-xsmall pin primary-color w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 384 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M192 512s192-208 192-320C384 86 298 0 192 0S0 86 0 '
                   '192C0 304 192 512 192 512zm0-384a64 64 0 1 1 0 128 64 64 0 1 1 '
                   '0-128z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-item-text-wrapper">\n'
                   '<div class="event-detail_detail-title">Where</div>\n'
                   '<div class="event-detail_detail-info">\n'
                   '<div class="text-weight-semibold">Sheffield Island Lighthouse '
                   'Dock</div>\n'
                   '<div class="event-detail_venue-address">\n'
                   '<div class="event-detail_details-text">90 Water Street</div>\n'
                   '<div class="text-size-small neg-left-margin">,</div>\n'
                   '<div class="event-detail_details-text">Norwalk, CT, 06854</div>\n'
                   '</div>\n'
                   '<div class="button-column">\n'
                   '<div class="w-embed">\n'
                   '<div class="button is-link is-icon" style="display: flex; '
                   'align-items: center; gap: 0.5rem">\n'
                   '<a data-outbound-link="" data-outbound-type="directions" '
                   'href="https://www.google.com/maps/dir/?api=1&amp;destination=Sheffield+Island+Lighthouse+Dock,90+Water+Street,Norwalk,CT,06854" '
                   'rel="noopener noreferrer" style="color: inherit; display: flex; '
                   'align-items: center; gap: 0.25rem" target="_blank">\n'
                   '                                    Directions\n'
                   '                                    <div '
                   'class="icon-embed-xxsmall" style="display: flex; align-items: '
                   'center">\n'
                   '<svg fill="currentColor" viewbox="0 0 384 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M328 96c13.3 0 24 10.7 24 24V360c0 13.3-10.7 24-24 '
                   '24s-24-10.7-24-24V177.9L73 409c-9.4 9.4-24.6 9.4-33.9 '
                   '0s-9.4-24.6 0-33.9l231-231H88c-13.3 0-24-10.7-24-24s10.7-24 '
                   '24-24H328z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '</a>\n'
                   '</div>\n'
                   '</div>\n'
                   '<a class="button is-link is-icon w-inline-block" '
                   'data-outbound-link="" data-outbound-type="venue_url" '
                   'href="http://www.seaport.org" rel="noopener noreferrer" '
                   'target="_blank">\n'
                   '<div>Venue Website</div>\n'
                   '<div class="icon-embed-xxsmall w-embed">\n'
                   '<svg fill="currentColor" viewbox="0 0 384 512" '
                   'xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M328 96c13.3 0 24 10.7 24 24V360c0 13.3-10.7 24-24 '
                   '24s-24-10.7-24-24V177.9L73 409c-9.4 9.4-24.6 9.4-33.9 '
                   '0s-9.4-24.6 0-33.9l231-231H88c-13.3 0-24-10.7-24-24s10.7-24 '
                   '24-24H328z"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '</a>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-item">\n'
                   '<div class="icon-embed-xsmall primary-color w-embed">\n'
                   '<svg aria-hidden="true" class="svg-inline--fa '
                   'fa-money-bill-wave" data-icon="money-bill-wave" '
                   'data-prefix="fas" focusable="false" role="img" viewbox="0 0 576 '
                   '512" xmlns="http://www.w3.org/2000/svg">\n'
                   '<path d="M559 54.5C524.1 38.25 489.2 32 454.3 32C343.5 32 232.5 '
                   '94.38 121.7 94.38c-27.79 0-55.57-4-83.36-13.75C35.21 79.5 32.06 '
                   '79 29.03 79C13.5 79 0 92.38 0 110.8v317.4c0 12.62 6.525 24.5 '
                   '16.99 29.38C51.86 473.8 86.85 480 121.7 480c110.8 0 221.7-62.38 '
                   '332.6-62.38c27.79 0 55.57 4 83.36 13.75c3.15 1.125 6.301 1.625 '
                   '9.338 1.625C562.5 433 576 419.6 576 401.1V83.88C576 71.25 569.5 '
                   '59.38 559 54.5zM528 151.2C496.5 147.2 472 120.6 472 88c0-2.209 '
                   '.4486-4.262 .6751-6.403C492 83.22 510.7 86.56 528 '
                   '93.39V151.2zM208 256c0-53.02 35.82-96 79.1-96s79.1 42.98 79.1 '
                   '96c0 53.02-35.82 96-79.1 96S208 309 208 256zM48 133.6C68.05 '
                   '138.6 88.86 140.1 110.4 141.7C104.2 170.5 78.63 192 48 '
                   '192V133.6zM48 360.8C79.53 364.8 104 391.4 104 424c0 2.207-.4486 '
                   '4.262-.6751 6.403C83.95 428.8 65.35 425.4 48 418.6V360.8zM528 '
                   '378.4c-20.05-5.02-40.85-7.4-62.44-8.139C471.8 341.5 497.4 320 '
                   '528 320V378.4z" fill="currentColor"></path>\n'
                   '</svg>\n'
                   '</div>\n'
                   '<div class="event-detail_detail-item-text-wrapper">\n'
                   '<div class="event-detail_detail-title">How Much</div>\n'
                   '<div class="event-detail_detail-info">\n'
                   '<div>$40</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</div>\n'
                   '</section>'}
      2026-06-16 17:22:09 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-07-31&page=4> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-07-16&page=3)
      2026-06-16 17:22:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-08-15&page=5> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-07-31&page=4)
      2026-06-16 17:22:24 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-08-30&page=6> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-08-15&page=5)
      2026-06-16 17:22:31 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-09-14&page=7> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-08-30&page=6)
      2026-06-16 17:22:34 [scrapy.extensions.logstats] INFO: Crawled 64 pages (at 64 pages/min), scraped 57 items (at 57 items/min)
      2026-06-16 17:22:38 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-09-29&page=8> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-09-14&page=7)
      2026-06-16 17:22:41 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-10-14&page=9> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-09-29&page=8)
      2026-06-16 17:22:46 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-10-29&page=10> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-10-14&page=9)
      2026-06-16 17:22:54 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-11-13&page=11> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-10-29&page=10)
      2026-06-16 17:23:08 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-11-28&page=12> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-11-13&page=11)
      2026-06-16 17:23:15 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-12-13&page=13> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-11-28&page=12)
      2026-06-16 17:23:18 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-12-28&page=14> (referer: https://www.civiclift.com/feeds/845/events?format=turbo_stream&from=&last_day=2026-12-13&page=13)
      2026-06-16 17:23:18 [scrapy.core.engine] INFO: Closing spider (finished)
      2026-06-16 17:23:18 [scrapy.extensions.feedexport] INFO: Stored csv feed (57 items) in: output/2026/06/16/visit_norwalk.csv
      2026-06-16 17:23:18 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
      {'downloader/request_bytes': 52339,
       'downloader/request_count': 71,
       'downloader/request_method_count/GET': 71,
       'downloader/response_bytes': 1757949,
       'downloader/response_count': 71,
       'downloader/response_status_count/200': 71,
       'dupefilter/filtered': 741,
       'elapsed_time_seconds': 104.473296,
       'feedexport/success_count/FileFeedStorage': 1,
       'finish_reason': 'finished',
       'finish_time': datetime.datetime(2026, 6, 16, 15, 23, 18, 937957, tzinfo=datetime.timezone.utc),
       'httpcompression/response_bytes': 11671159,
       'httpcompression/response_count': 71,
       'item_scraped_count': 57,
       'items_per_minute': 32.88461538461539,
       'log_count/DEBUG': 243,
       'log_count/ERROR': 57,
       'log_count/INFO': 4,
       'log_count/WARNING': 1,
       'memusage/max': 157069312,
       'memusage/startup': 93118464,
       'request_depth_max': 14,
       'response_received_count': 71,
       'responses_per_minute': 40.96153846153846,
       'scheduler/dequeued': 71,
       'scheduler/dequeued/memory': 71,
       'scheduler/enqueued': 71,
       'scheduler/enqueued/memory': 71,
       'start_time': datetime.datetime(2026, 6, 16, 15, 21, 34, 464661, tzinfo=datetime.timezone.utc)}
      2026-06-16 17:23:18 [scrapy.core.engine] INFO: Spider closed (finished)
    • Log

      /1/log/utf8/event_scrapers/visit_norwalk/0bc13a2e699711f1bbc60050565fa5d9/?job_finished=True

    • Source

      http://127.0.0.1:6800/logs/event_scrapers/visit_norwalk/0bc13a2e699711f1bbc60050565fa5d9.log

  • sourcelog
    last_update_time2026-06-16 17:23:18
    last_update_timestamp1781623398
    downloader/request_bytes52339
    downloader/request_count71
    downloader/request_method_count/GET71
    downloader/response_bytes1757949
    downloader/response_count71
    downloader/response_status_count/20071
    dupefilter/filtered741
    elapsed_time_seconds104.473296
    feedexport/success_count/FileFeedStorage1
    finish_reasonfinished
    finish_timedatetime.datetime(2026, 6, 16, 15, 23, 18, 937957, tzinfo=datetime.timezone.utc)
    httpcompression/response_bytes11671159
    httpcompression/response_count71
    item_scraped_count57
    items_per_minute32.88461538461539
    log_count/DEBUG243
    log_count/ERROR57
    log_count/INFO4
    log_count/WARNING1
    memusage/max157069312
    memusage/startup93118464
    request_depth_max14
    response_received_count71
    responses_per_minute40.96153846153846
    scheduler/dequeued71
    scheduler/dequeued/memory71
    scheduler/enqueued71
    scheduler/enqueued/memory71
    start_timedatetime.datetime(2026, 6, 16, 15, 21, 34, 464661, tzinfo=datetime.timezone.utc)