Head
2026-08-11 19:20:32 [scrapy.utils.log] INFO: Scrapy 2.14.1 started (bot: event_scrapers)
2026-08-11 19:20:32 [scrapy.utils.log] INFO: Versions:
{'lxml': '6.0.2',
'libxml2': '2.14.6',
'cssselect': '1.3.0',
'parsel': '1.10.0',
'w3lib': '2.0.0',
'Twisted': '25.5.0',
'Python': '3.12.3 (main, Jun 19 2026, 12:46:00) [GCC 13.3.0]',
'pyOpenSSL': '25.3.0 (OpenSSL 3.5.4 30 Sep 2025)',
'cryptography': '46.0.3',
'Platform': 'Linux-6.8.0-90-generic-x86_64-with-glibc2.39'}
2026-08-11 19:20:32 [scrapy.crawler] DEBUG: Using AsyncCrawlerProcess
2026-08-11 19:20:32 [asyncio] DEBUG: Using selector: EpollSelector
2026-08-11 19:20:32 [scrapy.addons] INFO: Enabled addons:
[]
2026-08-11 19:20:33 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor
2026-08-11 19:20:33 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop
2026-08-11 19:20:33 [scrapy.extensions.telnet] INFO: Telnet Password: bdead64d47e5633c
2026-08-11 19:20:33 [scrapy.middleware] INFO: Enabled extensions:
['scrapy.extensions.corestats.CoreStats',
'scrapy.extensions.logcount.LogCount',
'scrapy.extensions.telnet.TelnetConsole',
'scrapy.extensions.memusage.MemoryUsage',
'scrapy.extensions.feedexport.FeedExporter',
'scrapy.extensions.logstats.LogStats']
2026-08-11 19:20:33 [scrapy.crawler] INFO: Overridden settings:
{'BOT_NAME': 'event_scrapers',
'FEED_EXPORT_ENCODING': 'utf-8',
'FEED_URI_PARAMS': <function _feed_uri_params at 0x7af13822f4c0>,
'LOG_FILE': '/root/event-list-scraping/logs/event_scrapers/lachattown_farm/f2acf8c495a811f188d50050565fa5d9.log',
'NEWSPIDER_MODULE': 'event_scrapers.spiders',
'REQUEST_FINGERPRINTER_CLASS': 'scrapy_zyte_api.ScrapyZyteAPIRequestFingerprinter',
'SPIDER_MODULES': ['event_scrapers.spiders']}
2026-08-11 19:20:33 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
2026-08-11 19:20:33 [scrapy_zyte_api.handler] INFO: Using a Zyte API key starting with 'ff9baec'
2026-08-11 19:20:33 [scrapy.middleware] INFO: Enabled downloader middlewares:
['scrapy.downloadermiddlewares.offsite.OffsiteMiddleware',
'scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware',
'scrapy.downloadermiddlewares.downloadtimeout.DownloadTimeoutMiddleware',
'scrapy.downloadermiddlewares.defaultheaders.DefaultHeadersMiddleware',
'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware',
'scrapy.downloadermiddlewares.retry.RetryMiddleware',
'scrapy.downloadermiddlewares.redirect.MetaRefreshMiddleware',
'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware',
'scrapy.downloadermiddlewares.redirect.RedirectMiddleware',
'scrapy_zyte_api.ScrapyZyteAPIDownloaderMiddleware',
'scrapy.downloadermiddlewares.cookies.CookiesMiddleware',
'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware',
'scrapy.downloadermiddlewares.stats.DownloaderStats']
2026-08-11 19:20:33 [scrapy.middleware] INFO: Enabled spider middlewares:
['scrapy.spidermiddlewares.start.StartSpiderMiddleware',
'scrapy.spidermiddlewares.httperror.HttpErrorMiddleware',
'scrapy_zyte_api.ScrapyZyteAPISpiderMiddleware',
'scrapy.spidermiddlewares.referer.RefererMiddleware',
'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware',
'scrapy.spidermiddlewares.depth.DepthMiddleware',
'scrapy_zyte_api.ScrapyZyteAPIRefererSpiderMiddleware']
2026-08-11 19:20:33 [scrapy.middleware] INFO: Enabled item pipelines:
['event_scrapers.pipelines.EventScrapersPipeline']
2026-08-11 19:20:33 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/pipelines/__init__.py:41: ScrapyDeprecationWarning: EventScrapersPipeline.open_spider() requires a spider argument, this is deprecated and the argument will not be passed in future Scrapy versions. If you need to access the spider instance you can save the crawler instance passed to from_crawler() and use its spider attribute.
self._check_mw_method_spider_arg(pipe.open_spider)
2026-08-11 19:20:33 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/pipelines/__init__.py:47: ScrapyDeprecationWarning: EventScrapersPipeline.process_item() requires a spider argument, this is deprecated and the argument will not be passed in future Scrapy versions. If you need to access the spider instance you can save the crawler instance passed to from_crawler() and use its spider attribute.
self._check_mw_method_spider_arg(pipe.process_item)
2026-08-11 19:20:33 [scrapy.core.engine] INFO: Spider opened
2026-08-11 19:20:33 [py.warnings] WARNING: /root/.venv/lib/python3.12/site-packages/scrapy/core/spidermw.py:490: ScrapyDeprecationWarning: event_scrapers.spiders.lachattown_farm.ListingSpider defines the deprecated start_requests() method. start_requests() has been deprecated in favor of a new method, start(), to support asynchronous code execution. start_requests() will stop being called in a future version of Scrapy. If you use Scrapy 2.13 or higher only, replace start_requests() with start(); note that start() is a coroutine (async def). If you need to maintain compatibility with lower Scrapy versions, when overriding start_requests() in a spider class, override start() as well; you can use super() to reuse the inherited start() implementation without copy-pasting. See the release notes of Scrapy 2.13 for details: https://docs.scrapy.org/en/2.13/news.html
warn(
2026-08-11 19:20:33 [lachattown_farm] INFO: Sending scraped events to prod API
2026-08-11 19:20:33 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2026-08-11 19:20:33 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6023
2026-08-11 19:20:33 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.lachattownfarm.org/index.php> (referer: None)
2026-08-11 19:20:34 [scrapy.downloadermiddlewares.offsite] DEBUG: Filtered offsite request to 'lachat-town-farm.jumbula.com': <GET https://lachat-town-farm.jumbula.com/fall-2026>
2026-08-11 19:20:34 [scrapy_zyte_api._params] WARNING: Cookies are enabled for request <GET https://www.lachattownfarm.org/register.php?eventid=2386>, and there are cookies in the cookiejar, but ZYTE_API_EXPERIMENTAL_COOKIES_ENABLED is False, so automatic mapping will not map cookies for this or any other request. To silence this warning, disable cookies for all requests that use automatic mapping, either with the COOKIES_ENABLED setting or with the dont_merge_cookies request metadata key.
2026-08-11 19:20:34 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.lachattownfarm.org/register.php?eventid=2386> (referer: https://www.lachattownfarm.org/index.php)
2026-08-11 19:20:34 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-11 19:20:34 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 4745
2026-08-11 19:20:34 [scrapy.core.scraper] DEBUG: Scraped from <200 https://www.lachattownfarm.org/register.php?eventid=2386>
{'event_url': 'https://www.lachattownfarm.org/register.php?eventid=2386',
'platform': 'Lachatt own Farm',
'platform_hash': '2f1c873a619548b03f9b4cdc2146e010',
'raw_body': '<div class="col-md-12 custom-column-bg py-5 mb-1 mb-md-0 '
'appear-animation" data-appear-animation="fadeInTopShorter">\n'
'\t\t\t\t\t\t\t\t<div class="overflow-hidden mb-3">\t\t\t\t<h2 '
'class="text-color-dark font-weight-semi-bold text-6 '
'negative-ls-1 mb-0">2026 Summer Farmhands</h2>\t\t\t\t\t\t\t'
'</div>\n'
' <div> \t<div '
'class="row">\n'
' \t\t<div '
'class="col-md-4">\t\t\t\t\t\t\t\t<div class="owl-carousel '
'owl-theme nav-inside mb-0" data-plugin-options="{\'items\': 1, '
"'margin': 10, 'animateOut': 'fadeOut', 'autoplay': true, "
'\'autoplayTimeout\': 5000, \'loop\': true}"><div><img '
'class="img-fluid" '
'src="img/events/img_2112.jpg"></div>\t\t\t\t\t\t</div>\t\t\t\t\t'
'</div> \t\t<div class="col-md-8"><h2 '
'class="mb-1 text-5 text-primary">Registration Opens February 3 @ '
Tail
'</div>\t\t\t\t\t\t\t </div>\n'
'\t\t\t\t\t\t\t</div>\n'
'\t\t\t\t\t\t</div>\n'
'\t\t\t\t\t</div>'}
2026-08-11 19:20:35 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-11 19:20:35 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 2869
2026-08-11 19:20:35 [scrapy.core.scraper] DEBUG: Scraped from <200 https://www.lachattownfarm.org/register.php?eventid=2527>
{'event_url': 'https://www.lachattownfarm.org/register.php?eventid=2527',
'platform': 'Lachatt own Farm',
'platform_hash': '2f1c873a619548b03f9b4cdc2146e010',
'raw_body': '<div class="col-md-12 custom-column-bg py-5 mb-1 mb-md-0 '
'appear-animation" data-appear-animation="fadeInTopShorter">\n'
'\t\t\t\t\t\t\t\t<div class="overflow-hidden mb-3">\t\t\t\t<h2 '
'class="text-color-dark font-weight-semi-bold text-6 '
'negative-ls-1 mb-0">August Farmers Market</h2>\t\t\t\t\t\t\t'
'</div>\n'
' <div> \t<div '
'class="row">\n'
' \t\t<div '
'class="col-md-4">\t\t\t\t\t\t\t\t<div class="owl-carousel '
'owl-theme nav-inside mb-0" data-plugin-options="{\'items\': 1, '
"'margin': 10, 'animateOut': 'fadeOut', 'autoplay': true, "
'\'autoplayTimeout\': 5000, \'loop\': true}"><div><img '
'class="img-fluid" src="img/events/peaches.jpg"></div>\t\t\t\t\t\t'
'</div>\t\t\t\t\t</div> \t\t<div '
'class="col-md-8"><p class="mb-1 mr-2"><strong><strong>Friday, '
'August 28, 4-8pm</strong></strong></p><p class=""><strong>Lachat '
'Town Farm’s August Farmers Market is almost here!</strong></p><p '
'class="">Join us at <strong>Lachat Farm</strong> for the '
'August <strong>Farmers Market</strong> — an evening full of '
'community, live music, fresh food, and family fun set on our '
'scenic historic farm in Weston.</p><p class="">Explore a vibrant '
'mix of <strong>fresh, locally grown produce, local honey, '
'handcrafted soaps, homemade jams, and fresh baked bread</strong> '
'straight from local ovens. Families can also enjoy easy dinner '
'options from local food vendors, perfect for a summer evening '
'feast.</p><p class="">For a list of our vendors, farms, food '
'tents, music and more <a href="market.php" target="_blank"> '
'<strong><em>click here.</em></strong> </a></p><p class=""> '
'<strong>Parking Information:</strong>\n'
'</p><ul class="mt-0 pt-0"><li class="mt-0 pt-0"> <strong>Free '
'parking</strong> at 1 Ladder Hill Road South (first come, first '
'served)\n'
'</li><li> <strong>Lower lot parking</strong> at 106 Godfrey Road '
'West: $20, refunded in tokens for most vendor purchases\n'
'</li><li> <strong>Overflow parking</strong> at the '
'<strong>Weston Field Club</strong>, with complimentary shuttle '
'service to the farm</li></ul><p class=""><strong> Thanks to our '
'August Market sponsor, Coldwell Banker Westport. '
'</strong></p><p class=""><strong>Lower Lot Parking and '
"Children's Area Registration Opens Friday, August 14 "
'</strong></p> <div class="row"><div class="col-md-12">\n'
'\n'
'\n'
'\n'
'\n'
'<ul class="list list-icons">\t\t\t\t\t\t\t </ul></div>\n'
'\t\t\t\t\t\t\t</div>\n'
'\t\t\t\t\t\t</div>\n'
'\t\t\t\t\t</div>\n'
'\t\t\t\t\n'
'\t\t\t</div> \n'
'\t\t</div>'}
2026-08-11 19:20:36 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.lachattownfarm.org/register.php?eventid=1086> (referer: https://www.lachattownfarm.org/index.php)
2026-08-11 19:20:36 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.lachattownfarm.org/register.php?eventid=2514> (referer: https://www.lachattownfarm.org/index.php)
2026-08-11 19:20:36 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-11 19:20:36 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 2044
2026-08-11 19:20:36 [scrapy.core.scraper] DEBUG: Scraped from <200 https://www.lachattownfarm.org/register.php?eventid=1086>
{'event_url': 'https://www.lachattownfarm.org/register.php?eventid=1086',
'platform': 'Lachatt own Farm',
'platform_hash': '2f1c873a619548b03f9b4cdc2146e010',
'raw_body': '<div class="col-md-12 custom-column-bg py-5 mb-1 mb-md-0 '
'appear-animation" data-appear-animation="fadeInTopShorter">\n'
'\t\t\t\t\t\t\t\t<div class="overflow-hidden mb-3">\t\t\t\t<h2 '
'class="text-color-dark font-weight-semi-bold text-6 '
'negative-ls-1 mb-0">Lachat Monthly Knitting '
'Circle</h2>\t\t\t\t\t\t\t</div>\n'
' <div> \t<div '
'class="row">\n'
' \t\t<div '
'class="col-md-4">\t\t\t\t\t\t\t\t<div class="owl-carousel '
'owl-theme nav-inside mb-0" data-plugin-options="{\'items\': 1, '
"'margin': 10, 'animateOut': 'fadeOut', 'autoplay': true, "
'\'autoplayTimeout\': 5000, \'loop\': true}"><div><img '
'class="img-fluid" '
'src="img/events/knitting-circle-3.jpg"></div>\t\t\t\t\t\t'
'</div>\t\t\t\t\t</div> \t\t<div '
'class="col-md-8"><p class="mb-1 mr-2"><strong><strong>7-9pm, the '
'third Wednesday of each month</strong></strong></p><p '
'class="">Silence your phone, sip a warm drink, jump into a new '
"knitting project or pick up a dusty one you wish you hadn't "
'abandoned. All are welcome to join this informal gathering in '
'the warmth of Lachat’s historic farmhouse. While knitters are '
'always eager to help each other, this program is not intended to '
'be instructional so knitters should come with a project of their '
'own and basic skills. </p><p class="">This is a free event with '
'light refreshments provided. Kindly RSVP to save your spot. '
'</p><p class="mb-2"><strong>Limited registration.</strong></p> '
'<div class="row"><div class="col-md-12">\n'
'\n'
'\n'
'\n'
'\n'
'<ul class="list list-icons">\t\t\t\t\t\t\t </ul></div>\n'
'\t\t\t\t\t\t\t</div>\n'
'\t\t\t\t\t\t</div>\n'
'\t\t\t\t\t</div>\n'
'\t\t\t\t\n'
'\t\t\t</div> \n'
'\t\t</div>'}
2026-08-11 19:20:36 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): norwalklist.org:443
2026-08-11 19:20:36 [urllib3.connectionpool] DEBUG: https://norwalklist.org:443 "POST /api/v1/raw-events/ HTTP/1.1" 201 2918
2026-08-11 19:20:36 [scrapy.core.scraper] DEBUG: Scraped from <200 https://www.lachattownfarm.org/register.php?eventid=2514>
{'event_url': 'https://www.lachattownfarm.org/register.php?eventid=2514',
'platform': 'Lachatt own Farm',
'platform_hash': '2f1c873a619548b03f9b4cdc2146e010',
'raw_body': '<div class="col-md-12 custom-column-bg py-5 mb-1 mb-md-0 '
'appear-animation" data-appear-animation="fadeInTopShorter">\n'
'\t\t\t\t\t\t\t\t<div class="overflow-hidden mb-3">\t\t\t\t<h2 '
'class="text-color-dark font-weight-semi-bold text-6 '
'negative-ls-1 mb-0">Intro to Mandalas: Painting & Wellness '
'Class</h2>\t\t\t\t\t\t\t</div>\n'
' <div> \t<div '
'class="row">\n'
' \t\t<div '
'class="col-md-4">\t\t\t\t\t\t\t\t<div class="owl-carousel '
'owl-theme nav-inside mb-0" data-plugin-options="{\'items\': 1, '
"'margin': 10, 'animateOut': 'fadeOut', 'autoplay': true, "
'\'autoplayTimeout\': 5000, \'loop\': true}"><div><img '
'class="img-fluid" '
'src="img/events/mandala2.jpg"></div>\t\t\t\t\t\t</div>\t\t\t\t\t'
'</div> \t\t<div class="col-md-8"><h2 '
'class="mb-1 text-5 text-primary">Calm. Center. Create.</h2><p '
'class="mb-1 mr-2"><strong><strong>Thursday, September 10, '
'6-8PM</strong></strong></p><p class="">Step into the world of '
'mandalas with this beginner-friendly dot-painting class, where '
'creativity and mindfulness come together. Mandalas—ancient '
'symbols of wholeness and balance—are more than just beautiful '
'designs. They are a powerful tool for self-expression, healing, '
'and meditation, helping us connect to the present moment and our '
'inner selves.</p><p class="">In this class, we’ll embrace the '
'beginner’s mind, where curiosity and openness take precedence '
'over perfection. You’ll learn the basics of dot-painting '
'techniques, explore the meaning behind mandalas, and create your '
'own vibrant piece of art, no matter your skill level.</p><p '
'class="">All supplies will be included (canvas, paints, dotting '
'tools, and more), with a welcoming, supportive space to explore '
'your creativity.</p><p class="">Mocktails crafted with fresh '
'herbs from the Kitchen Garden will be provided, guests are also '
'welcome to bring along a beverage/snacks of their choice to '
'enjoy.</p><p class="">Join us for a journey into creativity and '
'calm. Let’s celebrate the joy of beginning something new!</p><p '
'class="mb-2"><strong>$60 per adult</strong></p><p '
'class="mb-2"><strong>Instructor: Amy Crose</strong></p> <div '
'class="row"><div class="col-md-12">\n'
'\n'
'\n'
'\n'
'\n'
'<ul class="list list-icons"><a '
'href="register-email-form.php?cat=1&eventid=2514&freeevent=0&waitlist=0" '
'class="btn btn-outline btn-tertiary btn-md mb-sm '
'font-weight-bold text-2 text-dark">Continue</a></ul></div> '
'</div>\t\t\t\t\t\t\t </div>\n'
'\t\t\t\t\t\t\t</div>\n'
'\t\t\t\t\t\t</div>\n'
'\t\t\t\t\t</div>'}
2026-08-11 19:20:36 [scrapy.core.engine] INFO: Closing spider (finished)
2026-08-11 19:20:36 [scrapy.extensions.feedexport] INFO: Stored csv feed (9 items) in: output/2026/08/11/lachattown_farm.csv
2026-08-11 19:20:36 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 8275,
'downloader/request_count': 10,
'downloader/request_method_count/GET': 10,
'downloader/response_bytes': 51898,
'downloader/response_count': 10,
'downloader/response_status_count/200': 10,
'elapsed_time_seconds': 3.243093,
'feedexport/success_count/FileFeedStorage': 1,
'finish_reason': 'finished',
'finish_time': datetime.datetime(2026, 8, 11, 17, 20, 36, 523611, tzinfo=datetime.timezone.utc),
'httpcompression/response_bytes': 227407,
'httpcompression/response_count': 10,
'item_scraped_count': 9,
'items_per_minute': 180.0,
'log_count/DEBUG': 38,
'log_count/INFO': 3,
'log_count/WARNING': 1,
'memusage/max': 99409920,
'memusage/startup': 99409920,
'offsite/domains': 1,
'offsite/filtered': 1,
'request_depth_max': 1,
'response_received_count': 10,
'responses_per_minute': 200.0,
'scheduler/dequeued': 10,
'scheduler/dequeued/memory': 10,
'scheduler/enqueued': 10,
'scheduler/enqueued/memory': 10,
'start_time': datetime.datetime(2026, 8, 11, 17, 20, 33, 280518, tzinfo=datetime.timezone.utc)}
2026-08-11 19:20:36 [scrapy.core.engine] INFO: Spider closed (finished)