2025-11-17 04:31:04 [scrapy.utils.log] INFO: Scrapy 2.12.0 started (bot: zomato_dining) 2025-11-17 04:31:04 [scrapy.utils.log] INFO: Versions: lxml 5.3.0.0, libxml2 2.12.9, cssselect 1.2.0, parsel 1.9.1, w3lib 2.2.1, Twisted 24.11.0, Python 3.10.12 (main, Aug 15 2025, 14:32:43) [GCC 11.4.0], pyOpenSSL 24.3.0 (OpenSSL 3.4.0 22 Oct 2024), cryptography 44.0.0, Platform Linux-6.8.0-1040-aws-aarch64-with-glibc2.35 2025-11-17 04:31:04 [dining_insights_zomato] INFO: Dynamic attribute _job = 105_2025-11-17T04_30_01 2025-11-17 04:31:04 [dining_insights_zomato] INFO: Dynamic attribute scheduled_job_id = 8046 2025-11-17 04:31:04 [dining_insights_zomato] INFO: Dynamic attribute SCRAPEOPS_JOB_NAME = 105 2025-11-17 04:31:04 [scrapy.addons] INFO: Enabled addons: [] 2025-11-17 04:31:04 [py.warnings] WARNING: /home/ubuntu/restaverse_spiders/venv/lib/python3.10/site-packages/scrapy/utils/request.py:120: ScrapyDeprecationWarning: 'REQUEST_FINGERPRINTER_IMPLEMENTATION' is a deprecated setting. It will be removed in a future version of Scrapy. return cls(crawler) 2025-11-17 04:31:04 [asyncio] DEBUG: Using selector: EpollSelector 2025-11-17 04:31:04 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor 2025-11-17 04:31:04 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop 2025-11-17 04:31:04 [scrapy.utils.log] DEBUG: Using reactor: twisted.internet.asyncioreactor.AsyncioSelectorReactor 2025-11-17 04:31:04 [scrapy.utils.log] DEBUG: Using asyncio event loop: asyncio.unix_events._UnixSelectorEventLoop 2025-11-17 04:31:04 [scrapy.extensions.telnet] INFO: Telnet Password: 718525eef72a89b2 2025-11-17 04:31:04 [scrapy.middleware] INFO: Enabled extensions: ['scrapy.extensions.corestats.CoreStats', 'scrapy.extensions.telnet.TelnetConsole', 'scrapy.extensions.memusage.MemoryUsage', 'scrapy.extensions.logstats.LogStats', 'scrapy_extensions.extension.BandwidthLoggerExtension', 'scrapeops_scrapy.extension.ScrapeOpsMonitor'] 2025-11-17 04:31:04 [scrapy.crawler] INFO: Overridden settings: {'BOT_NAME': 'zomato_dining', 'CONCURRENT_REQUESTS': 8, 'DOWNLOAD_DELAY': 0.5, 'FEED_EXPORT_ENCODING': 'utf-8', 'LOG_FILE': '/home/ubuntu/restaverse_spiders/logs/zomato_dining/dining_insights_zomato/105_2025-11-17T04_30_01.log', 'NEWSPIDER_MODULE': 'zomato_dining.spiders', 'REQUEST_FINGERPRINTER_IMPLEMENTATION': '2.7', 'SPIDER_MODULES': ['zomato_dining.spiders'], 'TWISTED_REACTOR': 'twisted.internet.asyncioreactor.AsyncioSelectorReactor', 'USER_AGENT': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, ' 'like Gecko) Chrome/127.0.0.0 Safari/537.36'} 2025-11-17 04:31:05 [faker.factory] DEBUG: Not in REPL -> leaving logger event level as is. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.address`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.address` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.automotive`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.automotive` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.bank`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Specified locale `en_US` is not available for provider `faker.providers.bank`. Locale reset to `en_GB` for this provider. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.barcode`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.barcode` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.color`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.color` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.company`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.company` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.credit_card`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.credit_card` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.currency`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.currency` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.date_time`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.date_time` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.emoji` does not feature localization. Specified locale `en_US` is not utilized for this provider. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.file` does not feature localization. Specified locale `en_US` is not utilized for this provider. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.geo`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.geo` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.internet`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.internet` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.isbn`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.isbn` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.job`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.job` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.lorem`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.lorem` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.misc`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.misc` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.passport`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.passport` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.person`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.person` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.phone_number`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.phone_number` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.profile` does not feature localization. Specified locale `en_US` is not utilized for this provider. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.python` does not feature localization. Specified locale `en_US` is not utilized for this provider. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.sbn` does not feature localization. Specified locale `en_US` is not utilized for this provider. 2025-11-17 04:31:05 [faker.factory] DEBUG: Looking for locale `en_US` in provider `faker.providers.ssn`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.ssn` has been localized to `en_US`. 2025-11-17 04:31:05 [faker.factory] DEBUG: Provider `faker.providers.user_agent` does not feature localization. Specified locale `en_US` is not utilized for this provider. 2025-11-17 04:31:05 [scrapy_fake_useragent.middleware] DEBUG: Loaded User-Agent provider: scrapy_fake_useragent.providers.FakerProvider 2025-11-17 04:31:05 [scrapy_fake_useragent.middleware] INFO: Using '' as the User-Agent provider 2025-11-17 04:31:05 [scrapy.middleware] INFO: Enabled downloader middlewares: ['scrapy.downloadermiddlewares.offsite.OffsiteMiddleware', 'zomato_dining.middlewares.RedisCacheMiddleware', 'scrapy.downloadermiddlewares.httpauth.HttpAuthMiddleware', 'scrapy.downloadermiddlewares.downloadtimeout.DownloadTimeoutMiddleware', 'scrapy.downloadermiddlewares.defaultheaders.DefaultHeadersMiddleware', 'scrapy_fake_useragent.middleware.RandomUserAgentMiddleware', 'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware', 'scrapeops_scrapy.middleware.retry.RetryMiddleware', 'scrapy.downloadermiddlewares.redirect.MetaRefreshMiddleware', 'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware', 'scrapy.downloadermiddlewares.redirect.RedirectMiddleware', 'scrapy.downloadermiddlewares.cookies.CookiesMiddleware', 'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware', 'scrapy.downloadermiddlewares.stats.DownloaderStats'] 2025-11-17 04:31:05 [scrapy.middleware] INFO: Enabled spider middlewares: ['scrapy.spidermiddlewares.httperror.HttpErrorMiddleware', 'zomato_dining.middlewares.ZomatoDiningSpiderMiddleware', 'scrapy.spidermiddlewares.referer.RefererMiddleware', 'scrapy.spidermiddlewares.urllength.UrlLengthMiddleware', 'scrapy.spidermiddlewares.depth.DepthMiddleware'] 2025-11-17 04:31:05 [scrapy.middleware] INFO: Enabled item pipelines: ['zomato_dining.pipelines.ZomatoDiningPipeline'] 2025-11-17 04:31:05 [scrapy.core.engine] INFO: Spider opened 2025-11-17 04:31:05 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min) 2025-11-17 04:31:05 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:31:05 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/setup/ HTTP/11" 200 None 2025-11-17 04:31:05 [dining_insights_zomato] INFO: Spider opened: dining_insights_zomato 2025-11-17 04:31:05 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6038 2025-11-17 04:31:05 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): cron.restaverse.com:443 2025-11-17 04:31:05 [urllib3.connectionpool] DEBUG: https://cron.restaverse.com:443 "POST /api/db_services/fetch-query HTTP/11" 200 3756 2025-11-17 04:31:05 [scrapy_fake_useragent.middleware] DEBUG: Assign User-Agent Mozilla/5.0 (Android 4.4.3; Mobile; rv:58.0) Gecko/58.0 Firefox/58.0 to Proxy http://scrapeops.country=in:dbc08e8a-4f73-4088-9f13-c2db0a774557@residential-proxy.scrapeops.io:8181 2025-11-17 04:31:06 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:31:06 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/normalizer/proxy_port/?job_id=5405233 HTTP/11" 200 None 2025-11-17 04:31:06 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:31:07 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/normalizer/domain/?domain=zomato.com HTTP/11" 200 241 2025-11-17 04:31:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/partners/onlineordering/orderHistory/) 2025-11-17 04:31:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://www.zomato.com/webroutes/auth/csrf?service_type=dine_out) 2025-11-17 04:31:10 [dining_insights_zomato] INFO: [CACHE KEY GENERATED] https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out 2025-11-17 04:31:10 [dining_insights_zomato] INFO: [CACHE HIT] https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out 2025-11-17 04:31:10 [scrapy.core.engine] DEBUG: Crawled (299) (referer: https://api.zomato.com/dining-gw/csrf/get?service_type=dine_out) 2025-11-17 04:31:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:14 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:15 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:16 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:17 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=18558920&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=21947250&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:18 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=21252124&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=19494275&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:19 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=20788521&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:19 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:31:20 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/stats/ HTTP/11" 200 109 2025-11-17 04:31:20 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=48736&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:21 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=21977007&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=21896270&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:22 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=21011596&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:23 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=18558920&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=21947250&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:24 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=21252124&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:25 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=19494275&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:26 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=48736&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=21977007&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:27 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=21896270&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=21011596&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:28 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=18558920&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:29 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=21947250&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:30 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=21252124&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=19494275&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:31 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=20631032&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:32 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=21977007&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=48736&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:33 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=21896270&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=18558920&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:34 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=21011596&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:34 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:31:35 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/stats/ HTTP/11" 200 109 2025-11-17 04:31:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=21252124&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=19494275&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:36 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=21947250&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:37 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=20631032&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:38 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=21977007&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=48736&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:39 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=20788521&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=21011596&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:40 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=21252124&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:40 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=21252124&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 82412, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 44, 'new_user_page_opens': 252, 'new_users_ctr': 7.2, 'new_users_impressions': 852, 'page_opens': 300, 'photos_viewed': 16, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 48, 'res_card_impressions': 956, 'res_id': '21252124', 'restaurant_card_ctr': 7.5, 'returning_users_ctr': 10.6, 'returning_users_impressions': 104, 'revenue': 82412, 'search_led_page_opens': 75, 'total_bookings': 0, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 0, 'total_transactions': 28, 'walk_in_revenue': 82412, 'walk_in_transactions': 28} 2025-11-17 04:31:41 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=18558920&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:41 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=18558920&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 4, 'billed_amount': 43109, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 2, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 74, 'new_user_page_opens': 211, 'new_users_ctr': 6.3, 'new_users_impressions': 1614, 'page_opens': 251, 'photos_viewed': 7, 'pre_book_revenue': 4608, 'pre_book_transactions': 1, 'repeat_user_page_opens': 40, 'res_card_impressions': 1759, 'res_id': '18558920', 'restaurant_card_ctr': 6.4, 'returning_users_ctr': 6.9, 'returning_users_impressions': 145, 'revenue': 43109, 'search_led_page_opens': 60, 'total_bookings': 2, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 8, 'total_transactions': 17, 'walk_in_revenue': 38501, 'walk_in_transactions': 16} 2025-11-17 04:31:42 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=20631032&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=21947250&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=21977007&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:43 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=21947250&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 43138, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 76, 'new_user_page_opens': 304, 'new_users_ctr': 6.5, 'new_users_impressions': 1671, 'page_opens': 365, 'photos_viewed': 23, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 61, 'res_card_impressions': 1904, 'res_id': '21947250', 'restaurant_card_ctr': 7.2, 'returning_users_ctr': 12.4, 'returning_users_impressions': 233, 'revenue': 43138, 'search_led_page_opens': 114, 'total_bookings': 0, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 0, 'total_transactions': 11, 'walk_in_revenue': 43138, 'walk_in_transactions': 11} 2025-11-17 04:31:43 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=48736&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:43 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=21977007&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 60272, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 30, 'new_user_page_opens': 161, 'new_users_ctr': 5.3, 'new_users_impressions': 920, 'page_opens': 199, 'photos_viewed': 10, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 38, 'res_card_impressions': 1070, 'res_id': '21977007', 'restaurant_card_ctr': 5.7, 'returning_users_ctr': 8, 'returning_users_impressions': 150, 'revenue': 60272, 'search_led_page_opens': 72, 'total_bookings': 0, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 0, 'total_transactions': 22, 'walk_in_revenue': 60272, 'walk_in_transactions': 22} 2025-11-17 04:31:43 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=48736&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 56558, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 102, 'new_user_page_opens': 290, 'new_users_ctr': 12.1, 'new_users_impressions': 1403, 'page_opens': 375, 'photos_viewed': 21, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 85, 'res_card_impressions': 1713, 'res_id': '48736', 'restaurant_card_ctr': 12.6, 'returning_users_ctr': 14.5, 'returning_users_impressions': 310, 'revenue': 56558, 'search_led_page_opens': 125, 'total_bookings': 0, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 0, 'total_transactions': 13, 'walk_in_revenue': 56558, 'walk_in_transactions': 13} 2025-11-17 04:31:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=20788521&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:44 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=21011596&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:45 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=21011596&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 66106, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 97, 'new_user_page_opens': 246, 'new_users_ctr': 7.2, 'new_users_impressions': 1426, 'page_opens': 363, 'photos_viewed': 42, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 118, 'res_card_impressions': 1783, 'res_id': '21011596', 'restaurant_card_ctr': 8.2, 'returning_users_ctr': 12.3, 'returning_users_impressions': 357, 'revenue': 66106, 'search_led_page_opens': 170, 'total_bookings': 0, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 0, 'total_transactions': 20, 'walk_in_revenue': 66106, 'walk_in_transactions': 20} 2025-11-17 04:31:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=19494275&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:45 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=19494275&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 4.1, 'billed_amount': 52039, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 18, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 71, 'new_user_page_opens': 165, 'new_users_ctr': 4.4, 'new_users_impressions': 1666, 'page_opens': 224, 'photos_viewed': 17, 'pre_book_revenue': 30193, 'pre_book_transactions': 6, 'repeat_user_page_opens': 59, 'res_card_impressions': 1947, 'res_id': '19494275', 'restaurant_card_ctr': 4.6, 'returning_users_ctr': 6, 'returning_users_impressions': 281, 'revenue': 52039, 'search_led_page_opens': 66, 'total_bookings': 18, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 74, 'total_transactions': 12, 'walk_in_revenue': 21846, 'walk_in_transactions': 6} 2025-11-17 04:31:45 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=21896270&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:46 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=20631032&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:47 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=20788521&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:49 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:49 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:31:50 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/stats/ HTTP/11" 200 109 2025-11-17 04:31:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=21896270&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:50 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=21896270&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 119121, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 73, 'new_user_page_opens': 235, 'new_users_ctr': 7.3, 'new_users_impressions': 1224, 'page_opens': 354, 'photos_viewed': 27, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 119, 'res_card_impressions': 1427, 'res_id': '21896270', 'restaurant_card_ctr': 8.5, 'returning_users_ctr': 15.8, 'returning_users_impressions': 203, 'revenue': 119121, 'search_led_page_opens': 180, 'total_bookings': 0, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 0, 'total_transactions': 32, 'walk_in_revenue': 119121, 'walk_in_transactions': 32} 2025-11-17 04:31:50 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=19564683&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:51 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=20631032&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:51 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=20631032&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 87059, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 39, 'new_user_page_opens': 266, 'new_users_ctr': 10.3, 'new_users_impressions': 894, 'page_opens': 306, 'photos_viewed': 17, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 40, 'res_card_impressions': 1025, 'res_id': '20631032', 'restaurant_card_ctr': 10.3, 'returning_users_ctr': 10.7, 'returning_users_impressions': 131, 'revenue': 87059, 'search_led_page_opens': 95, 'total_bookings': 0, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 0, 'total_transactions': 23, 'walk_in_revenue': 87059, 'walk_in_transactions': 23} 2025-11-17 04:31:52 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=21968206&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=18740145&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:53 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=20788591&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/restaurants/get-all?page=1&service_type=dine_out) 2025-11-17 04:31:54 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=20647993&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=18625420&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:55 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=20788521&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:55 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=20788521&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 3.8, 'billed_amount': 115769, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 26, 'lossbooking_restrictions': 35857, 'lossinventory_consumption': 0, 'menu_viewed': 78, 'new_user_page_opens': 247, 'new_users_ctr': 6, 'new_users_impressions': 1259, 'page_opens': 337, 'photos_viewed': 21, 'pre_book_revenue': 49860, 'pre_book_transactions': 10, 'repeat_user_page_opens': 90, 'res_card_impressions': 1472, 'res_id': '20788521', 'restaurant_card_ctr': 6.4, 'returning_users_ctr': 8.5, 'returning_users_impressions': 213, 'revenue': 115769, 'search_led_page_opens': 135, 'total_bookings': 26, 'total_estimated_business_loss': 35857, 'total_no_of_covers_sold': 99, 'total_transactions': 27, 'walk_in_revenue': 65909, 'walk_in_transactions': 17} 2025-11-17 04:31:56 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=19564683&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:57 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=21968206&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=18740145&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:58 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=20788591&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=revenue&period_type=daily&res_id=18303709&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=20647993&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:31:59 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=18625420&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:00 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=19564683&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=21968206&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:01 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=18740145&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:03 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=transactions&period_type=daily&res_id=18303709&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=20788591&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=20647993&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:04 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=18625420&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:04 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:32:05 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/stats/ HTTP/11" 200 109 2025-11-17 04:32:05 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=19564683&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:05 [scrapy.extensions.logstats] INFO: Crawled 91 pages (at 91 pages/min), scraped 10 items (at 10 items/min) 2025-11-17 04:32:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=18740145&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=table_reservation&period_type=daily&res_id=18303709&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:07 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=20788591&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:08 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=20647993&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=18625420&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:09 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=18740145&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:10 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=18740145&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 66939, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 74, 'new_user_page_opens': 193, 'new_users_ctr': 7.3, 'new_users_impressions': 1081, 'page_opens': 243, 'photos_viewed': 23, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 50, 'res_card_impressions': 1184, 'res_id': '18740145', 'restaurant_card_ctr': 7.6, 'returning_users_ctr': 10.7, 'returning_users_impressions': 103, 'revenue': 66939, 'search_led_page_opens': 86, 'total_bookings': 0, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 0, 'total_transactions': 22, 'walk_in_revenue': 66939, 'walk_in_transactions': 22} 2025-11-17 04:32:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=19564683&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:10 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=19564683&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 0, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 0, 'new_user_page_opens': 0, 'new_users_ctr': 0, 'new_users_impressions': 0, 'page_opens': 0, 'photos_viewed': 0, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 0, 'res_card_impressions': 0, 'res_id': '19564683', 'restaurant_card_ctr': 0, 'returning_users_ctr': 0, 'returning_users_impressions': 0, 'revenue': 0, 'search_led_page_opens': 0, 'total_bookings': 0, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 0, 'total_transactions': 0, 'walk_in_revenue': 0, 'walk_in_transactions': 0} 2025-11-17 04:32:10 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=18303709&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=20647993&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:11 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=20647993&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 39616, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 86, 'new_user_page_opens': 190, 'new_users_ctr': 4.3, 'new_users_impressions': 2826, 'page_opens': 257, 'photos_viewed': 15, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 67, 'res_card_impressions': 3209, 'res_id': '20647993', 'restaurant_card_ctr': 4.7, 'returning_users_ctr': 7.3, 'returning_users_impressions': 383, 'revenue': 39616, 'search_led_page_opens': 52, 'total_bookings': 0, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 0, 'total_transactions': 13, 'walk_in_revenue': 39616, 'walk_in_transactions': 13} 2025-11-17 04:32:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=20788591&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=20788591&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 3.3, 'billed_amount': 75569, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 6, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 44, 'new_user_page_opens': 173, 'new_users_ctr': 5.7, 'new_users_impressions': 1566, 'page_opens': 209, 'photos_viewed': 12, 'pre_book_revenue': 9256, 'pre_book_transactions': 3, 'repeat_user_page_opens': 36, 'res_card_impressions': 1727, 'res_id': '20788591', 'restaurant_card_ctr': 5.8, 'returning_users_ctr': 6.8, 'returning_users_impressions': 161, 'revenue': 75569, 'search_led_page_opens': 58, 'total_bookings': 6, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 20, 'total_transactions': 28, 'walk_in_revenue': 66313, 'walk_in_transactions': 25} 2025-11-17 04:32:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=18303709&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:12 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=18625420&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:32:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=18303709&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 67234, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 61, 'new_user_page_opens': 189, 'new_users_ctr': 8.1, 'new_users_impressions': 799, 'page_opens': 235, 'photos_viewed': 15, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 46, 'res_card_impressions': 920, 'res_id': '18303709', 'restaurant_card_ctr': 8.9, 'returning_users_ctr': 14, 'returning_users_impressions': 121, 'revenue': 67234, 'search_led_page_opens': 79, 'total_bookings': 0, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 0, 'total_transactions': 21, 'walk_in_revenue': 67234, 'walk_in_transactions': 21} 2025-11-17 04:32:12 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=18625420&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 0, 'billed_amount': 66438, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 0, 'lossbooking_restrictions': 13314, 'lossinventory_consumption': 0, 'menu_viewed': 91, 'new_user_page_opens': 310, 'new_users_ctr': 9.3, 'new_users_impressions': 1403, 'page_opens': 374, 'photos_viewed': 37, 'pre_book_revenue': 0, 'pre_book_transactions': 0, 'repeat_user_page_opens': 64, 'res_card_impressions': 1604, 'res_id': '18625420', 'restaurant_card_ctr': 9.7, 'returning_users_ctr': 11.9, 'returning_users_impressions': 201, 'revenue': 66438, 'search_led_page_opens': 143, 'total_bookings': 0, 'total_estimated_business_loss': 13314, 'total_no_of_covers_sold': 0, 'total_transactions': 20, 'walk_in_revenue': 66438, 'walk_in_transactions': 20} 2025-11-17 04:32:19 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:32:20 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/stats/ HTTP/11" 200 109 2025-11-17 04:32:34 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:32:35 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/stats/ HTTP/11" 200 109 2025-11-17 04:32:49 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:32:50 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/stats/ HTTP/11" 200 109 2025-11-17 04:33:04 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:33:05 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/stats/ HTTP/11" 200 109 2025-11-17 04:33:05 [scrapy.extensions.logstats] INFO: Crawled 103 pages (at 12 pages/min), scraped 16 items (at 6 items/min) 2025-11-17 04:33:11 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=business_loss&period_type=daily&res_id=21968206&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:33:13 [scrapy.core.engine] DEBUG: Crawled (200) (referer: https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_page_engagement&period_type=daily&res_id=21968206&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16) 2025-11-17 04:33:13 [scrapy.core.scraper] DEBUG: Scraped from <200 https://api.zomato.com/dining-gw/merchant/web/insights/get-aggregated-insights?tab_type=res_card_engagement&period_type=daily&res_id=21968206&service_type=dine_out&start_date=2025-11-16&end_date=2025-11-16> {'avg_cover_size': 3.2, 'billed_amount': 17056, 'cover_charge_bookings': 0, 'date': '2025-11-16', 'free_bookings': 5, 'lossbooking_restrictions': 0, 'lossinventory_consumption': 0, 'menu_viewed': 39, 'new_user_page_opens': 137, 'new_users_ctr': 6.5, 'new_users_impressions': 1101, 'page_opens': 159, 'photos_viewed': 10, 'pre_book_revenue': 4678, 'pre_book_transactions': 2, 'repeat_user_page_opens': 22, 'res_card_impressions': 1154, 'res_id': '21968206', 'restaurant_card_ctr': 7, 'returning_users_ctr': 17, 'returning_users_impressions': 53, 'revenue': 17056, 'search_led_page_opens': 47, 'total_bookings': 5, 'total_estimated_business_loss': 0, 'total_no_of_covers_sold': 16, 'total_transactions': 6, 'walk_in_revenue': 12378, 'walk_in_transactions': 4} 2025-11-17 04:33:13 [scrapy.core.engine] INFO: Closing spider (finished) 2025-11-17 04:33:13 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): cron.restaverse.com:443 2025-11-17 04:33:13 [urllib3.connectionpool] DEBUG: https://cron.restaverse.com:443 "POST /api/db_services/fetch-query HTTP/11" 200 1732 2025-11-17 04:33:13 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): cron.restaverse.com:443 2025-11-17 04:33:13 [urllib3.connectionpool] DEBUG: https://cron.restaverse.com:443 "POST /insert_data/ HTTP/11" 201 112 2025-11-17 04:33:13 [dining_insights_zomato] INFO: Logger Payload: {'run_id': 'b5ee6314-c99d-4ba7-a195-89b6b5ce99d1', 'timestamp': '2025-11-17T04:33:13Z', 'spider': 'dining_insights_zomato', 'client_id': '105', 'domain': 'www.zomato.com', 'bytes_sent': 0, 'bytes_received': 70, 'duration_seconds': 128.38, 'host': 'ip-172-31-16-168', 'status': 'finished'} 2025-11-17 04:33:13 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): watchdog.restaverse.com:9200 2025-11-17 04:33:13 [urllib3.connectionpool] DEBUG: http://watchdog.restaverse.com:9200 "POST /scrapy-2025-11-17/_doc HTTP/11" 201 165 2025-11-17 04:33:13 [dining_insights_zomato] INFO: Logger Payload: {'run_id': 'b5ee6314-c99d-4ba7-a195-89b6b5ce99d1', 'timestamp': '2025-11-17T04:33:13Z', 'spider': 'dining_insights_zomato', 'client_id': '105', 'domain': 'api.zomato.com', 'bytes_sent': 0, 'bytes_received': 325910, 'duration_seconds': 128.38, 'host': 'ip-172-31-16-168', 'status': 'finished'} 2025-11-17 04:33:13 [urllib3.connectionpool] DEBUG: Starting new HTTP connection (1): watchdog.restaverse.com:9200 2025-11-17 04:33:13 [urllib3.connectionpool] DEBUG: http://watchdog.restaverse.com:9200 "POST /scrapy-2025-11-17/_doc HTTP/11" 201 165 2025-11-17 04:33:13 [urllib3.connectionpool] DEBUG: Starting new HTTPS connection (1): api.scrapeops.io:443 2025-11-17 04:33:14 [urllib3.connectionpool] DEBUG: https://api.scrapeops.io:443 "POST /api/v1/stats/ HTTP/11" 200 109 2025-11-17 04:33:14 [scrapy.statscollectors] INFO: Dumping Scrapy stats: {'downloader/request_bytes': 658666, 'downloader/request_count': 104, 'downloader/request_method_count/GET': 104, 'downloader/response_bytes': 283894, 'downloader/response_count': 105, 'downloader/response_status_count/200': 104, 'downloader/response_status_count/299': 1, 'elapsed_time_seconds': 128.378265, 'finish_reason': 'finished', 'finish_time': datetime.datetime(2025, 11, 17, 4, 33, 13, 498465, tzinfo=datetime.timezone.utc), 'httpcompression/response_bytes': 325874, 'httpcompression/response_count': 103, 'item_scraped_count': 17, 'items_per_minute': None, 'log_count/DEBUG': 208, 'log_count/INFO': 18, 'log_count/WARNING': 1, 'memusage/max': 129409024, 'memusage/startup': 116432896, 'request_depth_max': 8, 'response_received_count': 105, 'responses_per_minute': None, 'scheduler/dequeued': 105, 'scheduler/dequeued/memory': 105, 'scheduler/enqueued': 105, 'scheduler/enqueued/memory': 105, 'start_time': datetime.datetime(2025, 11, 17, 4, 31, 5, 120200, tzinfo=datetime.timezone.utc)} 2025-11-17 04:33:14 [scrapy.core.engine] INFO: Spider closed (finished)